【问题标题】:unable to find Boost in cmake无法在 cmake 中找到 Boost
【发布时间】:2017-06-23 02:53:01
【问题描述】:

我正在使用 cmake 构建一个 PCL 项目。我在一个安装程序中使用了 PCL。然后提升路径是 C:/Program Files/PCL 1.5.1/3rdParty/Boost. 请在下面找到我的 cmake 调试版本。感谢任何帮助。

[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:615 ]   BOOST_ROOT = C:/Program Files/PCL 1.5.1/3rdParty/Boost
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:617 ]   BOOST_INCLUDEDIR = 
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:619 ]   BOOST_LIBRARYDIR = 
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:621 ] _boost_TEST_VERSIONS = 1.47;1.47.0;1.59.0;1.59;1.58.0;1.58;1.57.0;1.57;1.56.0;1.56;1.55.0;1.55;1.54.0;1.54;1.53.0;1.53;1.52.0;1.52;1.51.0;1.51;1.50.0;1.50;1.49.0;1.49;1.48.0;1.48;1.47.0;1.47;1.46.1;1.46.0;1.46;1.45.0;1.45;1.44.0;1.44;1.43.0;1.43;1.42.0;1.42;1.41.0;1.41;1.40.0;1.40
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:690 ] Include debugging info:
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:692 ]   _boost_INCLUDE_SEARCH_DIRS = C:/Program Files/PCL 1.5.1/3rdParty/Boost/include;C:/Program Files/PCL 1.5.1/3rdParty/Boost;PATHS;C:/boost/include;C:/boost;/sw/local/include
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:694 ]   _boost_PATH_SUFFIXES = boost-1_47;boost_1_47;boost/boost-1_47;boost/boost_1_47;boost-1_47_0;boost_1_47_0;boost/boost-1_47_0;boost/boost_1_47_0;boost-1_59_0;boost_1_59_0;boost/boost-1_59_0;boost/boost_1_59_0;boost-1_59;boost_1_59;boost/boost-1_59;boost/boost_1_59;boost-1_58_0;boost_1_58_0;boost/boost-1_58_0;boost/boost_1_58_0;boost-1_58;boost_1_58;boost/boost-1_58;boost/boost_1_58;boost-1_57_0;boost_1_57_0;boost/boost-1_57_0;boost/boost_1_57_0;boost-1_57;boost_1_57;boost/boost-1_57;boost/boost_1_57;boost-1_56_0;boost_1_56_0;boost/boost-1_56_0;boost/boost_1_56_0;boost-1_56;boost_1_56;boost/boost-1_56;boost/boost_1_56;boost-1_55_0;boost_1_55_0;boost/boost-1_55_0;boost/boost_1_55_0;boost-1_55;boost_1_55;boost/boost-1_55;boost/boost_1_55;boost-1_54_0;boost_1_54_0;boost/boost-1_54_0;boost/boost_1_54_0;boost-1_54;boost_1_54;boost/boost-1_54;boost/boost_1_54;boost-1_53_0;boost_1_53_0;boost/boost-1_53_0;boost/boost_1_53_0;boost-1_53;boost_1_53;boost/boost-1_53;boost/boost_1_53;boost-1_52_0;boost_1_52_0;boost/boost-1_52_0;boost/boost_1_52_0;boost-1_52;boost_1_52;boost/boost-1_52;boost/boost_1_52;boost-1_51_0;boost_1_51_0;boost/boost-1_51_0;boost/boost_1_51_0;boost-1_51;boost_1_51;boost/boost-1_51;boost/boost_1_51;boost-1_50_0;boost_1_50_0;boost/boost-1_50_0;boost/boost_1_50_0;boost-1_50;boost_1_50;boost/boost-1_50;boost/boost_1_50;boost-1_49_0;boost_1_49_0;boost/boost-1_49_0;boost/boost_1_49_0;boost-1_49;boost_1_49;boost/boost-1_49;boost/boost_1_49;boost-1_48_0;boost_1_48_0;boost/boost-1_48_0;boost/boost_1_48_0;boost-1_48;boost_1_48;boost/boost-1_48;boost/boost_1_48;boost-1_47_0;boost_1_47_0;boost/boost-1_47_0;boost/boost_1_47_0;boost-1_47;boost_1_47;boost/boost-1_47;boost/boost_1_47;boost-1_46_1;boost_1_46_1;boost/boost-1_46_1;boost/boost_1_46_1;boost-1_46_0;boost_1_46_0;boost/boost-1_46_0;boost/boost_1_46_0;boost-1_46;boost_1_46;boost/boost-1_46;boost/boost_1_46;boost-1_45_0;boost_1_45_0;boost/boost-1_45_0;boost/boost_1_45_0;boost-1_45;boost_1_45;boost/boost-1_45;boost/boost_1_45;boost-1_44_0;boost_1_44_0;boost/boost-1_44_0;boost/boost_1_44_0;boost-1_44;boost_1_44;boost/boost-1_44;boost/boost_1_44;boost-1_43_0;boost_1_43_0;boost/boost-1_43_0;boost/boost_1_43_0;boost-1_43;boost_1_43;boost/boost-1_43;boost/boost_1_43;boost-1_42_0;boost_1_42_0;boost/boost-1_42_0;boost/boost_1_42_0;boost-1_42;boost_1_42;boost/boost-1_42;boost/boost_1_42;boost-1_41_0;boost_1_41_0;boost/boost-1_41_0;boost/boost_1_41_0;boost-1_41;boost_1_41;boost/boost-1_41;boost/boost_1_41;boost-1_40_0;boost_1_40_0;boost/boost-1_40_0;boost/boost_1_40_0;boost-1_40;boost_1_40;boost/boost-1_40;boost/boost_1_40
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:714 ] location of version.hpp: C:/Program Files/PCL 1.5.1/3rdParty/Boost/include/boost/version.hpp

[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:1087 ] Searching for IOSTREAMS_LIBRARY_DEBUG: libboost_iostreams-vc120-mt-gd-1_48;libboost_iostreams-vc120-mt-gd;libboost_iostreams-mt-gd-1_48;libboost_iostreams-mt-gd;libboost_iostreams-mt;libboost_iostreams;libboost_iostreams-vc120-mt-s-gd-1_48;libboost_iostreams-vc120-mt-s-gd;libboost_iostreams-mt-s-gd-1_48;libboost_iostreams-mt-s-gd
[ C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindBoost.cmake:1153 ] Boost_FOUND = 1
Could NOT find Boost
Boost version: 1.48.0
Boost include path: C:/Program Files/PCL 1.5.1/3rdParty/Boost/include
Could not find the following static Boost libraries:
        boost_system
        boost_filesystem
        boost_thread
        boost_date_time
        boost_iostreams
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.

【问题讨论】:

  • 以“搜索”开头的行描述了要搜索的精确 文件名(无扩展名)。 BOOST_ROOT 下有这些文件吗?
  • @Tsyvarev 而不是那个我有 boost_date_time-vc90-mt-1_48 类型库,但我不知道如何将 vc90 转换为 vc10

标签: windows boost cmake


【解决方案1】:

Boost 中库文件的名称编码有关目标的信息,已针对该目标编译库。

-vc120 这样的后缀表示MSVC 编译器的版本

您只能使用适合您的 Visual Studio 的 Boost 库。

Visual Studio 与 MSVC 编译器版本之间的对应关系(来自关于 Visual C++ 的 wiki 页面):

MSVC++ 5.0  _MSC_VER == 1100
MSVC++ 6.0  _MSC_VER == 1200
MSVC++ 7.0  _MSC_VER == 1300
MSVC++ 7.1  _MSC_VER == 1310 (Visual Studio 2003)
MSVC++ 8.0  _MSC_VER == 1400 (Visual Studio 2005)
MSVC++ 9.0  _MSC_VER == 1500 (Visual Studio 2008)
MSVC++ 10.0 _MSC_VER == 1600 (Visual Studio 2010)
MSVC++ 11.0 _MSC_VER == 1700 (Visual Studio 2012)
MSVC++ 12.0 _MSC_VER == 1800 (Visual Studio 2013)
MSVC++ 14.0 _MSC_VER == 1900 (Visual Studio 2015)

可用于 CMake 的 Visual Studio generators 列表:

Visual Studio 6
Visual Studio 7
Visual Studio 7 .NET 2003
Visual Studio 8 2005
Visual Studio 9 2008
Visual Studio 10 2010
Visual Studio 11 2012
Visual Studio 12 2013
Visual Studio 14 2015
Visual Studio 15 2017

例如,后缀为 -vc120 的 Boost 库只能与 Visual Studio 12 2013 生成器一起使用。

【讨论】:

    猜你喜欢
    • 2014-08-02
    • 1970-01-01
    • 1970-01-01
    • 2014-11-19
    • 2011-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多