How to Make cURL works with cmake

来源:互联网 发布:知乎关注排行 编辑:程序博客网 时间:2024/05/18 22:39
How to Make cURL works with cmake

    Recently, I want to learn cURL, so downloaded it and compiled it, and use
cmake to manage the project, I wrote a CMakelists.txt as below:

cmake_minimum_required(VERSION 2.8)project(curlTest)find_package(CURL REQUIRED)include_directories(${CURL_INCLUDE_DIR})set(sources appMain.cpp)add_executable(curlTest ${sources})target_link_libraries(curlTest ${CURL_LIBRIRIES})



    But it did not work, and cmake reported that it can not find cURL, I met
this situation before, so I set the environment variable for cmake like this:
 
    set LIBCURL_ROOT= "cURL's path"

    But it did not work neither, and I was confused, what was wrong with me, and
how could I make it works?
    So I configured the environment variable CPLUS_INCLUDE_PATH to libcurl's
path, it did not work neither.
    Finally, I open the file FindCURL.cmake and check content, I found that the
content didn't point the path of libcurl out, so I modified sentence in
FindCURL.cmake:

find_path(CURL_INCLUDE_DIR    NAMES curl/curl.h)


to

find_path(CURL_INCLUDE_DIR    NAMES curl/curl.h    PATHS $ENV{LIBCURL_ROOT}/include)


and the sentece in FindCURL.cmake

find_library(CURL_LIBRARY NAMES    curl  # Windows MSVC prebuilts:    curllib    libcurl_imp    curllib_static  # Windows older "Win32 - MSVC" prebuilts (libcurl.lib, e.g. libcurl-7.15.5-win32-msvc.zip):    libcurl) 


to


and run:
   cmkae .. -G "MinGW Makefiles", it worked.
    
    The conclution:
    1. don't trust the libraries so much.
    2. think more.
0 0
原创粉丝点击