微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用柯南包管理器在 clion 中构建 dll 项目的问题

如何解决使用柯南包管理器在 clion 中构建 dll 项目的问题

我在 Visual Studio 中有一个项目,我们决定将其移植到 Clion IDE。 我们将使用 conan 来管理我们的包。

到目前为止我所做的是

  1. 创建了一个 conanfile.txt 并在里面

    [需要]

    boost/1.76.0

    cpprestsdk/2.10.18

    [发电机]

    制作

  2. Cmake 文件看起来像这样

    cmake_minimum_required(版本 3.19)

    项目(odbcDriverDevelopmentSockets)

    add_deFinitions("-std=c++20")

    add_compile_deFinitions(UNICODE)

    add_compile_deFinitions(_UNICODE)

    add_compile_deFinitions(BOOST_USE_WINDOWS_H)

    add_compile_deFinitions(sql_NOUNICODEMAP)

    add_compile_deFinitions(_WINDLL)

    add_compile_deFinitions(_WINDOWS)

    add_compile_deFinitions(WIN_DEFS)

    add_compile_deFinitions(MIDDLE_EXPORTS)

    add_compile_deFinitions(_USRDLL)

    add_compile_deFinitions(cppkafka_EXPORTS)

    设置(CMAKE_CXX_STANDARD 20)

    include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)

    conan_basic_setup()

    include_directories(中间)

    add_library(odbcDriverDevelopmentSockets SHARED '所有我的源代码')

    find_library(${CONAN_LIBS})

    target_link_libraries(odbcDriverDevelopmentSockets ${CONAN_LIBS})

  3. 我使用了 conan install 并安装了软件包

现在当我运行构建时出现此错误

 **cpprest142_2_10.lib(http_client.obj) : error LNK2001: unresolved external symbol 
  __imp___std_init_once_complete**

当我尝试构建“静态”项目(在 Cmake 中删除 SHARED)时,它会成功构建。 我还检查了 ${CONAN_LIBS} 并在我的 /Users/me/.conan 目录中下载了所有库

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。