How to Make cURL works with cmake

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.
posted @ 2017-04-17 08:02  jzdwajue  阅读(203)  评论(0编辑  收藏  举报