boost1.34.0用MinGW怎么编译?我随带文档编译不通啊。

pass86 2007-07-23 06:09:55
我想用install参数
bjam --gcc --prefix=E:\Boost install
结果提示:.construct.什么的failed,于是我只用了
bjam --gcc
开始编译,但是有20个skiped,为什么呢?
有谁遇到类似问题?给点经验啊,我的bjam也编译不成功是去下的。
...全文
359 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
taodm 2007-07-25
  • 打赏
  • 举报
回复
没啥好遗憾的,你不用的库编译过了也没意义,纯心理安慰。
pass86 2007-07-25
  • 打赏
  • 举报
回复
用VC7.1就可以去不通过,mingw不能全部编译成功真的有点遗憾啊。
pass86 2007-07-25
  • 打赏
  • 举报
回复
OK,不问了,July 24, 2007 - Version 1.34.1 is out.
我不能不告诉大家我遇到的问题是个BUG,
1025 Install/stage on Windows with GCC doesn't copy DLLs.
986 Problem building Python modules on boost 1.34.0
1005 Unable to compile Python example, tutorial, or quickstart with Boost 1_34_0
996 boost threads doesn't build on windows with UNICODE
现已FIXED.
pass86 2007-07-25
  • 打赏
  • 举报
回复
呵呵,我要用那些库,而且,mingw不就是GCC的Windows版本吗,如果mingw都编译不过去,那怎么行呢,BOOST的可移植特性不久成为了空话了吗?
taodm 2007-07-25
  • 打赏
  • 举报
回复
boost里有N个库编不出来是很正常的,你想用的编译出来了就可以了。
taodm 2007-07-24
  • 打赏
  • 举报
回复
我编译的时候没加--prefix=E:\Boost install,就直接过了。
pass86 2007-07-24
  • 打赏
  • 举报
回复
bjam用v2,很多是不用编译的,可是我这次需要编译的那些应用,
有经验者指教啊,感激不尽。
pass86 2007-07-24
  • 打赏
  • 举报
回复
LS恩说对了
1.34.0该格式了,可是用--prefix=E:\Boost install却失败了。
Th_Pk_Ying 2007-07-24
  • 打赏
  • 举报
回复
在Windows下面我把bjam.exe拷到boost的目录下,然后运行bjam.exe,提示几个warning后出现一个...found 1 target...然后就停掉了,不接着编译了,怎么回事啊,请高人指点
taodm 2007-07-24
  • 打赏
  • 举报
回复
1.34改了bjam格式了
要bjam -toolset=gcc
pass86 2007-07-24
  • 打赏
  • 举报
回复
可是为什么会有
...failed updating 125 targets...
...skipped 20 targets...
呢,参考了bjam --help,上面的说法不管哦。
jixingzhong 2007-07-24
  • 打赏
  • 举报
回复
1、前提

a) 下载Boost_1_32_0源码包(http://sourceforge.net/project/showfiles.php?group_id=7586 ),由于在Windows平台下编译,我们可以选择下载boost_1_32_0.exe文件;

b) 安装Windows下的GCC版本(这里我们使用开源的GCC作为编译工具,因为其Free),我选择了MinGW-3.2.0-rc-3(http://sourceforge.net/forum/forum.php?forum_id=438862 );

c) 下载Boost专用build工具bjam,在Windows平台下我们可以得到已经编译好的bjam.exe(http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941 ),你可以 下载boost-jam-3.1.10-1-ntx86.zip文件。

 

2、目录结构

a) 运行下载后的boost_1_32_0.exe文件,选择解压缩到的目录即可。如D:\boost_1_32_0;

b) 将下载的bjam.exe拷贝到上述目录中。

 

3、设置环境变量

a) 由于默认情况下,MinGW会安装在C:\MinGW下,一旦你选择其他目录,你就需要自己设置Path。将%Your_MinGW_Install_Path%\bin加入到你的系统Path变量中。

 

4、Build

在命令行下进入到boost源码包存放的目录,如D:\boost_1_32_0,然后运行:

bjam “-sTOOLS=gcc” install

 

编译由此开始,如果你的系统没有装Python相关的东东,在编译的最开始会提示你一些warnings,无须理它,让它继续吧!默认的boost安装路径为C:\boost,我们这里采用默认路径。

 

5、Build结果

编译的过程是漫长的(一般配置的机器2小时左右),需要你耐心的等待。

编译后结果:在C:\Boost下生成两个文件夹include和lib,在D:\ boost_1_32_0中则多了一个bin目录。

 

6、应用boost

a) 设置boost库

如果你使用的IDE(比如Microsoft Visual Studio或者MinGW Developer Studio(http://petra.hos.u-szeged.hu/~aking/www.parinya.ca/download/MinGWStudioFullSetupPlus-2.05.exe )),你可以在IDE的include和lib路径中直接设置boost库的位置。如果你用的是命令行工具,对于复杂的项目构建估计你需要写你自己的Makefile了。

b) 使用boost的例子

 

//HelloBoost.cpp

#include <iostream>

#include <string>

#include <boost/tokenizer.hpp>

using namespace std;

using namespace boost;

 

int main()

{

string s = "Hello Boost,This is a test";

tokenizer<> tok(s);

for(tokenizer<>::iterator beg=tok.begin(); beg != tok.end(); ++beg)

{

cout << *beg << "\n";

}

}

//Compile: g++ -o HelloBoost.exe HelloBoost.cpp -I"C:\Boost\include\boost-1_32"

 

//output:

Hello

Boost

This

is

a

test
jixingzhong 2007-07-24
  • 打赏
  • 举报
回复
Boost在MinGW的编译安装手册

http://dozb.bokee.com/2055000.html

boost 版本不同,
但是大同小异,
参考一下。
taodm 2007-07-24
  • 打赏
  • 举报
回复
搜索一下*.a,*.dll,不是举手之牢嘛。
有兴趣就认真研究bjam --help。
pass86 2007-07-24
  • 打赏
  • 举报
回复
我也没有加--prefix=E:\Boost install通过,但是
...failed updating 125 targets...
...skipped 20 targets...
...updated 1926 targets...
生成的.a和.dll文件都分散在各自的归类文件夹中
pass86 2007-07-23
  • 打赏
  • 举报
回复
help me .

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧