windows上的Boost安装,缺少库

windows上的Boost安装,缺少库,boost,installation,cmake,Boost,Installation,Cmake,我正在努力建立一个激励机制。我跟着火车走。我创建了一个包含include和libs的文件夹C:\Boost,并将其添加到我的环境路径中。然而,当我尝试使用cMake构建另一个项目时,我得到了: CMake Error at C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/FindBoost.cmake:1106 (message): Unable to find the requested Boost libraries. Boo

我正在努力建立一个激励机制。我跟着火车走。我创建了一个包含include和libs的文件夹C:\Boost,并将其添加到我的环境路径中。然而,当我尝试使用cMake构建另一个项目时,我得到了:

  CMake Error at C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/FindBoost.cmake:1106 (message):
  Unable to find the requested Boost libraries.
  Boost version: 1.55.0

  Boost include path: C:/Boost/include/boost-1_55

  The following Boost libraries could not be found:

      boost_system
      boost_filesystem
      boost_signals

 No Boost libraries were found.  You may need to set BOOST_LIBRARYDIR to the
directory containing Boost libraries or BOOST_ROOT to the location of
Boost.
Call Stack (most recent call first):
CMakeLists.txt:88 (find_package)

你知道那些缺失的LIB吗?

用一个问题开始回答是件坏事,但我还是这么做了:

  • 首先,我假设您设置了一个指向C:\BOOST的环境变量BOOST\u ROOT,对吗?(仅将其添加到路径中可能不够。)
  • 第二,您正在运行哪个CMake生成器?Visual Studio、Makefile、忍者
我最近遇到了一个类似的问题,它与我实际使用的发电机相连。更准确地说,我试图从cmake gui中创建一个忍者项目,但得到了几乎相同的错误消息。然而,我能够毫无问题地在cmake gui项目中创建一个Visual Studio项目

当仔细查看忍者案例的命令输出时,我在一开始就发现了以下两行:

C编译器标识未知
CXX编译器标识未知
这暗示了实际的问题。虽然很清楚Visual Studio(9、10、11等)将使用哪个编译器,但cmake无法推断Ninja的默认编译器,因为它是一个通用构建系统,使用不同的编译器运行。最后,由于编译器未知,未找到boost

一个简单的解决方案是打开要运行的Visual Studio版本的开发人员命令提示符。当您在此“扩展”命令提示符下创建项目时,CMake将能够推断出正确的编译器。或者,您可以在运行CMAKE时设置CMAKE_CXX_编译器和CMAKE_C_编译器标志

cmake-G“忍者”
cmake-G“忍者”-DCMAKE_CXX_COMPILER=“path/to/CXX/COMPILER”-cmake_C_COMPILER=“path/to/C/COMPILER”
希望这有帮助