VS2017-MPI v9-静态编译Boost1.6.7

这是本人顽固的想用VS2017编译PCL的产物。一共有7部分,这次接着介绍第二部分即用vs2017加MPI-v9静态编译Boost1.6.7。

下载并安装Microsoft MPI v9

这是MPI的最新版v9。下载链接为:https://www.microsoft.com/en-us/download/details.aspx?id=56727如图所示:
这里写图片描述
下载msmpisdk.msi跟msmpisetup.exe然后默认安装路径即可,就像我这样:
这里写图片描述
这里写图片描述

下载并解压Boost1.6.7

这是目前Boost库的最新版本。直接官网下载即可,下载链接在此:https://dl.bintray.com/boostorg/release/1.67.0/source/点进去下载这个版本:Boost 1 67 0.zip
这里写图片描述

找到解压路径下的tools\build\src\tools,在里面找到mpi.jam这个文件,用Notepad打开。我们需要修改这个文件。从第246行开始。没有修改之前的mpi.jam文件如下图:

这里写图片描述
那么要修改哪些地方呢?别急,且听我一一道来。只需要修改三处地方,再注释掉一个地方就好了。诸位请看:
这里写图片描述
把我画叉的那一句话:local cluster_pack_path_native = “C:\Program Files\Microsoft Compute Cluster Pack” ;注释掉。
再把文中所有ms_mpi_path_native的地方用microsoft_mpi_path替换,最后把文中所有ms_mpi_sdk_path_native跟ms_mpi_sdk_path的地方用microsoft_mpi_sdk_path替换。
替换后的结果如下:
这里写图片描述

打开vs2017的 X64本机工具命令提示

切记,打开之前做一个小测试。打开cmd命令行,输入cl。如果出现我这个界面。说明你x64命令行的环境配好了。
这里写图片描述
如果没有出现我这个界面,那么不好意思。你还需要重新去配你的vs2017的x64命令行环境。那么怎么配置呢。打开你的vs2017安装目录。我以我的为例,我是在C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.14.26428\bin\Hostx64\x64\cl.exe.然后把我的这个路径添加到环境变量path里面。如下图:
这里写图片描述

我个人认为最最最最重要的一点来了。把路径添加到环境变量以后一定要重新启动计算机。一定要重启,一定要重启,一定要重启。敲黑板,划重点。我之前编译了四遍,都失败了。问题之一就是因为这个。那么大伙愉快的重启吧。
重启之后以管理员权限打开vs2017的x64本机工具命令提示。如下图:

这里写图片描述
打开后转到你boost的解压文件夹路径下。然后输入bootstrap.bat接着就会出现这个界面:

这里写图片描述

然后你就会在你的boost解压文件夹下面发现这几个新东西:

这里写图片描述

打开project-config.jam

请用notepad打开。打开之后你会看到:

这里写图片描述

那么怎么改呢,很简单的.只需要加上using mpi ;这一句话。如下图所示:

这里写图片描述
然后保存。切记一定要保存啊,保存之后再关闭.

然后继续在命令行里面敲下如下代码:bjam -j8 stage –toolset=msvc-14.1 –without-python –without-graph_parallel address-model=64 –stagedir=”F:\mylib\boost\bin1.67.0\VC14.1” link=static runtime-link=shared threading=multi debug release然后回车你就可以慢慢等了。因为是静态编译所以没有dll。在stagedir那个文件夹下面就是编译出来的boost的lib库。那可能有人要问我了。那boost的include库呢?被你吃了?各位看官别急。boost的include库远在天边近在眼前。就在你boost解压的boost文件夹下面。你只需要再单独提取出来就行了。

这里写图片描述

其中最关键的就是mpi的这两个lib了。哈哈哈
这里写图片描述

然后就等我的下一篇文章吧。下一篇应该是用vs2017编译Qhull2015.2

猜你喜欢

转载自blog.csdn.net/hrq3333/article/details/81262218