在Windows上将libcurl与CMake链接
如果我尝试构建cURL,它将显示以下输出:在Windows上将libcurl与CMake链接,cmake,libcurl,Cmake,Libcurl,如果我尝试构建cURL,它将显示以下输出: Checking Build System Building Custom Rule C:/CPP/Projects/WebsiteGuardian/CMakeLists.txt LINK : warning LNK4098: Standardbibliothek "LIBCMTD" steht in Konflikt mit anderen Bibliotheken; /NODEFAULTLIB:Biblioth ek verwenden. [C
Checking Build System
Building Custom Rule C:/CPP/Projects/WebsiteGuardian/CMakeLists.txt
LINK : warning LNK4098: Standardbibliothek "LIBCMTD" steht in Konflikt mit anderen Bibliotheken; /NODEFAULTLIB:Biblioth
ek verwenden. [C:\CPP\Projects\WebsiteGuardian\build\WebsiteGuardian.vcxproj]
WebsiteGuardian.vcxproj -> C:\CPP\Projects\WebsiteGuardian\build\Debug\WebsiteGuardian.exe
Building Custom Rule C:/CPP/Projects/WebsiteGuardian/CMakeLists.txt
我是这样构建的:我从这里下载了current.zip:curl.haxx.se/download.html,然后我使用:Set RTLIBCFG=static和nmake/f Makefile.vc mode=static vc=15 MACHINE=x86 DEBUG=no构建了curl。我复制了projectfolder中的include-and-lib目录。它也将被成功地发现。My CMakeLists.txt:
cmake_minimum_required(VERSION 3.10)
project(WebsiteGuardian CXX)
set(CMAKE_CXX_STANDARD 17)
set(CURL_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/include)
set(CURL_LIBRARY ${CMAKE_SOURCE_DIR}/lib/libcurl_a_debug.lib )
add_definitions(-DCURL_STATICLIB)
find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIR})
add_executable(WebsiteGuardian "src/main.cpp")
target_link_libraries(WebsiteGuardian ${CURL_LIBRARY} wldap32 ws2_32 Crypt32.lib Wldap32 Normaliz)
谢谢你的回答。这对我来说很好:
cmake_minimum_required(VERSION 3.10)
project(WebsiteGuardian CXX)
set(CMAKE_CXX_STANDARD 17)
set(CURL_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/include)
set(CURL_LIBRARY ${CMAKE_SOURCE_DIR}/lib/libcurl_a_debug.lib )
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
add_definitions(-DCURL_STATICLIB)
find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIR})
add_executable(WebsiteGuardian "src/main.cpp")
target_link_libraries(WebsiteGuardian ${CURL_LIBRARY} wldap32 ws2_32 Crypt32.lib Wldap32 Normaliz)
不,它显示相同的输出。欢迎使用堆栈溢出!是否安装了curl?如果要链接库(curl\u library变量中指定了哪个绝对路径),只需针对以下路径进行链接:target\u link\u librariesWebsiteGuardian${curl\u library}。谢谢^^。我从这里下载了current.zip:之后,我使用:Set RTLIBCFG=static和nmake/f Makefile.vc mode=static vc=15 MACHINE=x86 DEBUG=no构建curl。我复制了projectfolder中的include-and-lib目录。它也将成功地找到:-找到CURL:-lcurl找到版本7.69。1@Tsyvarev像这样:target_link_librariesWebsiteGuardian${CURL_LIBRARY}wldap32 ws2_32?