`
luliangok
  • 浏览: 780121 次
文章分类
社区版块
存档分类
最新评论

bjam编译boost失败及原因

 
阅读更多
bjam编译boost失败及原因

(转载请注明来源于金庆的专栏)

用bjam在各种环境下编译Boost , 没有十次也有八次了,
但是前两天在一台XP上编译时,竟然失败。

查看输出,竟然是在创建目录时失败。信息如下:

MkDir1 stage
mkdir "stage"
...failed MkDir1 stage...
...skipped stage/lib for lack of stage...

因为是用mingw的gcc编译,开始时以为是mingw的环境有问题,
实际结果是找错了方向。
mingw已经有过成功先例,而且新装一台机器后编译也成功了。
Google类似错误也没有什么线索。

变通方法是用bjam -n打印出所有命令到一个批处理文件,
然后执行批处理来编译。

用该方法创建了所有的目录,使MkDir1规则通过了,
但是下一个错误是common.copy规则,看来所有的命令都会出错。

但是不甘心用这个方法,不能向错误屈服。
最后还是在bjam的源代码中找到了线索。

原来一条规则会建立一个命令,
然后在NT上会在用户的Temp目录下创建一个临时bat文件,
运行该bat文件执行命令。

使用bjam -d2或-d3,-d4可以打印出1到2、3、4级的调试信息,
在4级信息内可以看到创建并运行的临时批处理。

因为该机器在很早以前被我设置权限,禁止了在Temp运行程序的权力,
所以产生了这个错误。
(禁止Temp运行程序对病毒木马是否有点作用呢?
还是去掉限制好了,因为有些程序确实会用到。)

放开权限就好了。
分享到:
评论

相关推荐

    boost编译工具bjam.exe

    boost1.55编译生成的bjam.exe和b2.exe

    bjam.exe boost库编译使用的工具

    编译boost库使用的工具,codeblock下编译boost库。

    boost编译工具-bjam用法介绍

    bjam 是专门为boost库设计的make编译工具,功能非常强大

    bjam安装所需软件包

    安装bjam编译环境所需要的源码包,过程记录可参见本人博客

    linux下编译boost.python简单方法

    最近项目使用c++操作Python...换到另外一台机器,重新下载boost,使用以下命令,顺利编译成功 ./bootstrap.sh --with-python=/usr/bin/python ./bjam --build-type=minimal --with-python variant=release link=static

    Win7上VS2015编译和使用Thrift

    编译Boost 1:从官方网站(http://www.boost.org/)上下载某一版本的Boost,比如我下载的boost_1_68_0.tar.gz的版本. 2:将下载好的boost_1_68_0.tar.gz解压到某一路径下(比如:E:\boost_1_68_0)。 3:打开CMD...

    bjam.exe(亲自生成的,绝对可用)

    搞了三四个小时,才终于搞懂了怎么生成这个东西。绝对可用,下载下来放到自己的boost文件夹下即可,然后就能点击它进行编译了!

    boost-jam-3.1.17

    编译完成的bjam.exe文件. 放到boost目录下在命令行运行

    boost_1_61_0

    2、运行上面那个脚本之后,会有一个bjam.exe,运行,此时进行编译和安装,大概十几分钟左右 3、在工程中设置工程属性来使用boost库 工程属性----------C/C++----------附加包含目录:D:\boost_1_61_0(此处就是你的...

    win7+boost+python3+vs2010编译说明文档1

    address-model=32表示生成的库为32位,64就表示64位,具体根据需求情况定,我们编译的是32位,继续在窗口里输入:bjam --toolset=

    boost_1_66_0_windows.rar

    编译方法很简单,打开vs2017的x64本机工具,然后cd到解压的boost目录,运行bootstrap.bat,运行完成后再运行bjam.exe即可,运行完成后一般会生成stage目录,其中的lib即为对应的库,没有任何设置的应该生成的是纯...

    ios-push-service:通过 Apple APNS(Apple 推送通知服务)发送通知

    然后你需要安装 boost-bjam 因为编译脚本是以 boost-bjam 风格编写的。 (关于boost编译系统的更多信息,可以到) 这两件事完成后,就可以下载ios-push-service代码并编译安装了。 编译 libcapn 使用 git 从克隆 ...

    mysqlcppconn.zip

    E:\192.168.6.44\boost_1_64_0(文件太大需自个编译,指令bjam stage --toolset=msvc-14.0 --stagedir="E:\192.168.6.44\boost_1_64_0\build\vc140" --build-type=complete) E:\44share\mysqlcpp\windows\mysql-...

    graphMT:基于图的机器翻译包

    graphMT是用于基于图的机器翻译的软件包。... 如果构建自己的Boost,则必须使用bjam install 较早版本的Boost可能会起作用 建造 编辑Makefile中的以下字段: CCFLAGS : -std=c++11或-std=c++0x取决于您的编译器 EIG

Global site tag (gtag.js) - Google Analytics