我已下载boost_1_61_0
并解压缩。
我使用bootstrap.bat
生成b2.exe
和bjam.exe
,并在名为" stage"的文件夹中成功构建了库。适用于x64
和win32
。
我有包含包含文件的.lib
和boost
个文件夹。
当我删除根文件夹时,我无法构建我的程序。 为什么我无法构建代码?
我用bs作为:
b2 -j8 toolset=msvc-14.0 address-model=64 architecture=x86 link=static threading=multi runtime-link=shared --build-type=minimal stage --stagedir=stage/x64 install
它创建包含libs和头文件的C:\boost
。但是当我尝试在项目中使用这个新文件夹时,我收到错误:couldn't find eg: boost/reg.hpp
构建它后是否有正确的方法来安装boost?
答案 0 :(得分:0)
boost包含在您创建的名为c:\ boost的文件夹中。所以路径是c:\ boost \ boost,因为看起来你已经找到了。
但更好的是使用环境变量。 您将在控制面板下找到它们> “系统”>高级> ...
将BOOST_ROOT
设置为c:\ boost和BOOST_LIB
到您的舞台路径。我将所有版本v100,v140 x86和64位保留在同一个文件夹中。然后在您的项目中,您可以将$(BOOST_ROOT)和lib目录的其他包含目录设置为$(BOOST_LIB)
这会带来很多好处,例如当6.62出现时你可以将它放在c:\ boost_62中并更改你的环境变量然后你所有的项目都在使用新的boost。你不必陷入c:\ boost。如果你与其他拥有不同路径的人分享这个项目,它就可以了。
BOOST_ROOT看起来很普遍,我不知道BOOST_LIB
此外,如果更改环境变量,则必须关闭Visual Studio并重新打开它才能使更改生效。
答案 1 :(得分:0)
大家好我明白了:
1-提取boost_1_61_0例如C:所以新文件夹名为" C:\ boost_1_61_0"
2-来自命令提示符或visual studio 2015-> Visual Studio工具 - > ms2015的开发人员命令提示符(以管理员身份运行)
3- cd C:\ boost_1_61_0
4- bootstrap.bat
创建新文件:根文件夹中的b2.exe和bjam.exe。 现在我们构建了x64版本的boost库:
5- b2 -j8 toolset = msvc-14.0 address-model = 64 architecture = x86 link = static threading = multi runtime-link = shared --build-type = minimal stage --stagedir = stage / x64
新文件夹" Stage"在根文件夹中创建,在这个文件夹里面有一个名为x64的文件夹,里面有一个文件夹" lib" (.lib文件)。这个过程需要几分钟(约20分钟)
完成后,系统会显示一条消息告诉您,boost_1_61_0会跳过某些目标,不要因为它属于其他操作系统而无所事事
现在我们构建x86版本:
b2 -j8 toolset = msvc-14.0 address-model = 32 architecture = x86 link = static threading = multi runtime-link = shared --build-type = minimal stage --stagedir = stage / win32
现在我们将这两个库安装到" C:\ Boost"然后删除文件夹" C:\ boost_1_61_0":
b2 -j8 toolset = msvc-14.0 address-model = 64 architecture = x86 link = static threading = multi runtime-link = shared --build-type = minimal stage --stagedir = C:\ Boost \ x64 install < / p>
现在我们安装win32版本: b2 -j8 toolset = msvc-14.0 address-model = 32 architecture = x86 link = static threading = multi runtime-link = shared --build-type = minimal stage --stagedir = C:\ Boost \ win32 install
**如何为我的项目添加提升?:
打开Msvc2015-&gt;创建c ++控制台新项目,当它创建时转到Project-&gt; &#34; MyBoostProject&#39; S&#34; properties-&gt; C / C ++ - &gt; General-&gt;其他包含目录 - &gt; edit-&gt; new folder-&gt; C:\ Boost \ include-&gt; boost_1_61 使用路径添加另一个文件夹:C:\ Boost \ include-&gt; Boost_1_61_0-&gt; Boost
现在包含文件准备好了。
**如何链接?:
如果我的项目是x86: 转到:链接器 - &gt;常规 - &gt;其他库目录 - &gt;编辑 - &gt;添加新文件夹 - &gt; C:\ Boost \ win32 \ Lib
如果我的项目是x64:
linker-&gt;其他库目录 - &gt; edit-&gt;添加新文件夹 - &gt; C:\ Boost \ x64 \ Lib
我希望这篇文章对那些无法安装它的人有用。