我试图找出这gd意味着在升级库名称中,我只发现另外两个人在寻找相同的东西.
我想它应该是一个清楚记录的地方,我想找到它.
mt - 多头,得到它 bjam threading=multis - bjam runtime-link=staticg - 使用标准和运行时支持库的调试版本.什么bjam开关???d - 调试 bjam variant=debug如何控制哪些bjam开关控制上述变体?事实上,我唯一无法识别的是g.
我不知道如何用C++ 0x编译器构建Boost.必须给bjam哪个选项?是否应修改user.config文件?有人可以帮助我吗?
最好的,维森特
我正在使用bjam为MinGW构建Boost(我正在使用System和FileSystem):
bjam --toolset=gcc stage
Run Code Online (Sandbox Code Playgroud)
它构建良好,但我希望能够静态链接到它(我必须有一个文件的最终产品)所以我试过:
bjam --link=static --toolset=gcc stage
Run Code Online (Sandbox Code Playgroud)
但我得到了相同的输出.有任何想法吗?
连续编辑第二个问题我在发帖后回答了几个问题:p猜我会把这个问题留给其他人.
bjam --build-type=complete --toolset=gcc stage
Run Code Online (Sandbox Code Playgroud)
肯定会建立动态和静态.
选项"--address-model = 32,64"是否可以构建32和64个库,还是必须进行两个单独的构建?
我正在查看jam文件,如何构建库的名称.例:libboost_log-mgw46-mt-1_48.dll
我想忽略最后一部分,如何使用我的构造名称传递链接-o参数.我有几个版本,并且在一个大项目中链接迫使我在项目文件中进行更改,这是很多地方.
我的愿望是获取libboost_log.dll.我只是重命名,但在执行程序时说,它无法找到
libboost_log-mgw46-mt-1_48.dll文件.
什么是Boost Jam,Jam是否值得迁移?
我知道果酱是由perforce构建的构建系统但是我不确定增压堵塞和常规堵塞是如何不同的.
我也希望SO社区中有人可以使用它,也许可以突出一些差异和/或好处.
有没有办法让bjam干净利落地构建?当它决定重建我的库并且它决定简单地从某个地方复制它们时,它似乎相当随机.
我已经尝试了bjam --clean-all和bjam --clean,但它似乎仍然找到它需要的文件而不是重新编译它只是将它们复制到我的stage/lib文件夹.
我正在尝试设置boost的子集并使用bjam正确编译,但是我没有得到我正在寻找的结果.我正在使用boost 1.37.0开发Windows.
假设我想要建立/安装库smart_ptr和filesystem.我有意选择了一个只有头文件库和一个需要编译库的库.我希望它们被构建到一个类似于我可以获得的目录结构中,如果我使用bjam构建一个完整的boost安装(即没有指定任何--with-libraryX)但当然没有我不感兴趣的所有库.
我的第一种方法是在bjam中使用--with-filesystem --with-smart_ptr,但它似乎无法识别smart_ptr(我试过smartptr和smart-ptr但没有成功).我想这是因为它只是一个标题库.
当我删除它并且只有--with-filesystem时,它似乎将所有库头文件复制到安装路径,并且只为文件系统构建库.库构建行为是我所希望的,但是我在我的boost目录中安装了大量我不感兴趣的库的头文件.
我的第二种方法是使用bcp来复制相关项目.这确实是因为我只得到了我关心的项目(及其依赖项).但是,他们没有提供任何make文件来构建复制的库.这意味着我需要为所有不是标题的库设置项目文件并手动构建它们.
所以我的问题基本上是,有没有一种选择性构建boost的方法,只复制我感兴趣的库的头文件,只为我感兴趣的非头文件库构建库文件(以及它们的boost库)依赖于课程)?
可能有很多基于手动/脚本的解决方案,但是如果我能够使用bjam运行对我来说会更有用,因为添加新库或升级到新的boost版本会非常简单.
编辑:为第一种方法添加了完整的命令行:
bjam install --prefix=c:\temp\boostsmall
--build-dir=C:\temp\boostsmalltemp --layout=system
--with-filesystem variant=debug link=static threading=multi
runtime-link=static
Run Code Online (Sandbox Code Playgroud)
将scoped_ptr更改为smart_ptr
我正在使用Windows 7 64位,并希望从命令行编译非预编译库(具体来说,我需要Filesystem)(我不使用MSVC).我有MinGW,但在Boost网站上读到不支持MSYS shell,所以我试图从Windows命令提示符编译库.
首先,运行bootstrap.bat会导致以下错误:
Building Boost.Jam build engine
'cl' is not recognized as an internal or external command,
operable program or batch file.
Failed to build Boost.Jam build engine.
Please consult bjam.log for furter diagnostics.
You can try to obtain a prebuilt binary from
http://sf.net/project/showfiles.php?group_id=7586&package_id=72941
Also, you can file an issue at http://svn.boost.org
Please attach bjam.log in that case.
Run Code Online (Sandbox Code Playgroud)
另外,boost_root目录中的任何位置都没有bjam.log文件.
忽略此错误,并尝试运行下载的bjam.exe文件,我收到另一个错误:
c:/boost_1_45_0/tools/build/v2/build\configure.jam:145: in builds-raw
*** argument error
* rule UPDATE_NOW ( targets * : log ? : ignore-minus-n ? …Run Code Online (Sandbox Code Playgroud) 我需要构建boost才能使用正则表达式库.我能够使用bootstrap.sh创建bjam,如下所示:
./bootstrap.sh --with-toolset=mingw
Run Code Online (Sandbox Code Playgroud)
注意 - 如果我省略了--with-toolset = mingw参数编译失败 - bootstrap找不到wait.h,resource.h,ar.h.使用mingw工具集参数,bjam能够编译.然后我运行bjam并得到:
./bjam.exe mingw.jam: No such file or directory e:/libraries/boost_1_45_0/tools/build/v2/build\toolset.jam:38: in toolset.using rule mingw.init unknown in module toolset. e:/libraries/boost_1_45_0/tools/build/v2/build\project.jam:881: in using project-config.jam:12: in modules.load e:/libraries/boost_1_45_0/tools/build/v2\build-system.jam:257: in load-config e:/libraries/boost_1_45_0/tools/build/v2\build-system.jam:423: in load-configuration-files e:/libraries/boost_1_45_0/tools/build/v2\build-system.jam:554: in load e:\libraries\boost_1_45_0\tools\build\v2/kernel\modules.jam:283: in import e:\libraries\boost_1_45_0\tools\build\v2\kernel\bootstrap.jam:142: in boost-build e:\libraries\boost_1_45_0\boost-build.jam:17: in module scope
我尝试了几种参数变量并得到了同样的错误:
./bjam.exe --build-dir=e:/libraries/boost_1_45_0/ --toolset=mingw ./bjam.exe --build-dir=e:/libraries/boost_1_45_0/ --toolset=gcc
不知道如何让bjam构建.有什么建议?
bjam ×10
boost ×9
c++ ×6
compilation ×3
linker ×2
boost-build ×1
build ×1
build-system ×1
c++11 ×1
gcc ×1
jam ×1
migration ×1
windows ×1