构建cpp-netlib失败-未添加lib前缀
Build cpp-netlib fail - not adding lib prefix
我正在尝试使用cmake从cygwin构建cpp-netlib。但是,请尝试找到没有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库是用MSVC指定为编译器构建的(它们名字中的"-vc120-"就是一个迹象)。使用Cygwin,您需要为Unix变体构建。
从Windows的Boost构建指令顶部的注释:
给Cygwin和MinGW用户的提示
如果您打算在Windows命令提示符中使用您的工具,那么您来对地方了。如果您计划从Cygwin bash shell构建,那么您实际上是在POSIX平台上运行的,并且应该遵循有关Unix变体的入门说明。其他命令shell(如MinGW的MSYS)不受支持——它们可能工作,也可能不工作。
你可以看到CMake的FindBoost模块正在做正确的事情;猜测编译器是GCC。例如,链接CMake输出的第62行是:
——[/usr/share/cmake-2.8.11.2/Modules/FindBoost. conf]cmake:739] guess _boost_COMPILER = -gcc48
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 当 lib 已添加到其他依赖项时,如何在 VS 中调试未解析的外部符号错误
- 将lib添加到jni应用程序中的makefile
- 如何添加其他CMAKE模块的静态LIB
- 将 lib*.so 添加到 cmake
- lib(libmyshlib.so,libmyshlib.so.1,libmyshlib.so.1.0)最好添加到我的项
- 如何将fltk lib添加到Netbeans项目中
- 要添加或不将QT LIB和标题添加到项目目录中
- 添加了对 .lib 项目的引用 - 项目不使用.cpp文件
- 将 .lib 文件添加到 Visual Studio 2015 中的项目
- 将 Shell32.lib 的依赖添加到 WDK makefile
- 如何在不重写 lib 类的情况下将函数添加到它
- 向cppnet-lib响应对象添加一个标头
- 如何在visual studio 2010中添加和使用第三方.dll,当没有提供.lib时
- 在eclipse中将.lib添加到.pro文件中.c++ / Eclipse / Linux
- 试图将include和lib添加到默认目录
- 如何解决由于在Visual Studio中向c++项目添加.lib文件而导致的链接错误
- 构建cpp-netlib失败-未添加lib前缀
- vulkan-1.lib:添加符号时出错:GCC 中的文件格式错误
- Qt5 添加库"Qt5WebEngineCore.lib"但链接名为"Qt5WebEngineCore551.lib"