【发布时间】:2014-05-29 20:28:29
【问题描述】:
我正在尝试使用来自 cygwin 的 cmake 构建 cpp-netlib。
但是 cmake 尝试查找没有 lib 前缀的包。而-DBoost_USE_STATIC_LIBS=ON 也解决不了问题!
这是我的命令行:
cmake ../cpp-netlib-0.9.4/ -DBOOST_ROOT:string=/cygdrive/c/Dev/boost_1_55_0 -DBoost_USE_STATIC_LIBS=ON -DBoost_DEBUG=ON -DBoost_DETAILED_FAILURE_MSG=ON
搜索:
-- [ /usr/share/cmake-2.8.11.2/Modules/FindBoost.cmake:930 ] Searching for THREAD_LIBRARY_RELEASE: boost_thread-gcc48-mt-1_55;boost_thread-gcc48-mt;boost_thread-mt-1_55;boost_thread-mt;boost_thread
-- [ /usr/share/cmake-2.8.11.2/Modules/FindBoost.cmake:966 ] Searching for THREAD_LIBRARY_DEBUG: boost_thread-gcc48-mt-d-1_55;boost_thread-gcc48-mt-d;boost_thread-mt-d-1_55;boost_thread-mt-d;boost_thread-mt;boost_thread
-- [ /usr/share/cmake-2.8.11.2/Modules/FindBoost.cmake:930 ] Searching for FILESYSTEM_LIBRARY_RELEASE: boost_filesystem-gcc48-mt-1_55;boost_filesystem-gcc48-mt;boost_filesystem-mt-1_55;boost_filesystem-mt;boost_filesystem
-- [ /usr/share/cmake-2.8.11.2/Modules/FindBoost.cmake:966 ] Searching for FILESYSTEM_LIBRARY_DEBUG: boost_filesystem-gcc48-mt-d-1_55;boost_filesystem-gcc48-mt-d;boost_filesystem-mt-d-1_55;boost_filesystem-mt-d;boost_filesystem-mt;boost_filesystem
-- [ /usr/share/cmake-2.8.11.2/Modules/FindBoost.cmake:930 ] Searching for PROGRAM_OPTIONS_LIBRARY_RELEASE: boost_program_options-gcc48-mt-1_55;boost_program_options-gcc48-mt;boost_program_options-mt-1_55;boost_program_options-mt;boost_program_options
-- [ /usr/share/cmake-2.8.11.2/Modules/FindBoost.cmake:966 ] Searching for PROGRAM_OPTIONS_LIBRARY_DEBUG: boost_program_options-gcc48-mt-d-1_55;boost_program_options-gcc48-mt-d;boost_program_options-mt-d-1_55;boost_program_options-mt-d;boost_program_options-mt;boost_program_options
这是完整的结果:http://pastebin.com/ZBfQyWvw。
正如您在命令行中看到的,我使用的是 cpp-netlib 0.9.4 和 Boost 1.55.0。
有什么提示吗?
谢谢!
【问题讨论】:
-
您能否给出您机器上肯定存在的 Boost 库之一的名称和完整路径,并且您希望 CMake 找到它?
-
是的,当然。这些库位于 C:\Dev\boost_1_55_0\stage\lib(或 /cygdrive/c/Dev/boost_1_55_0/stage/lib)。完整列表在这里:pastebin.com/6uk5pv3s。但是,当您问我时,我看到了另一个问题。 libboost 文件是 vc120,来自 cpp-netlib 的 CMake 需要 gcc48...
-
忘记 cygwin,我下载了适用于 Windows 的 CMake 和 OpenSSL 版本并使用命令提示符构建它。现在一切正常。但是我在构建解决方案时遇到了一些问题。我需要更改项目的某些内容,还是只需要打开 .sln 并构建?
标签: c++ boost cmake cygwin cpp-netlib