我正在尝试在Windows 8.1上编译由其他人创建的Kinect v2点云示例。此Visual Studio示例依赖于名为
的库libboost_mpi-VC120-MT-GD-1_57.lib
我google了很长一段时间,但没有找到这个预编译库的可下载版本(有可下载版本的预编译的boost库,但它们不包含boost MPI库的二进制文件),所以我决定建立一个。每次我尝试构建boost库时都会说
"warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam."
每个论坛以及我检查的提升文档都说需要修改user-config.jam并向其添加'using mpi;'
来编译mpi的libs。
但是我无法在boost文件夹的任何位置找到一个名为user-config.jam的文件(除了pathto\boost_1_57_0\tools\build\example\
中的一个site-config.jam和一个user-config.jam)。
所有论坛都说pathto\boost_1_57_0\tools\build\
中应该有一个user-config.jam,但我找不到。所以我在该位置创建了自己的user-config.jam并将'using mpi;'
添加到该文件中,但它仍然没有编译mpi库。我还尝试在pathto\boost_1_57_0
中放置一个user-config.jam并再次从pathto\boost_1_57_0
安装,但我得到相同的结果(即任何地方都没有MPI二进制文件)。
我正在建设的方式如官方文档here中所述。即使文档说没有user-config.jam也无法构建boost,我实际上能够从pathto \ boost_1_57_0文件夹构建它;所以我很难知道发生了什么。
有什么我想念的吗?所有这一切只是因为VStudio项目依赖于那个lib文件。我需要的一个lib文件属于一个库提升不构建:(。如果有人拥有它(libboost_mpi-vc120-mt-gd-1_57.lib)并且可以附加它也会很棒:) 。提前致谢
答案 0 :(得分:3)
但是我无法在任何地方找到名为user-config.jam的文件 boost文件夹(一个site-config.jam和一个user-config.jam除外) 在pathto \ boost_1_57_0 \ tools \ build \ example)。
您要查找的目录是pathto\boost_1_57_0\tools\build\src
。
换句话说,创建并编辑以下文件:
pathto\boost_1_57_0\tools\build\src\user-config.jam
。
如果您需要pathto\boost_1_57_0\tools\build\example\user-config.jam
,可以从示例文件开始,将其复制到上述位置。
答案 1 :(得分:0)
官方documentation说明了您可以在何处放置user-config.jam
文件。一个可能的位置是您的HOME
目录。具体位置取决于您的操作系统和特定配置。
答案 2 :(得分:0)
如果您不想将user-config.jam
文件放置在HOME
目录中,只需在调用b2
时指定其位置即可:
$ ./b2 --user-config=/path/to/user-config.jam ...