如何在WINDOWS下编译TBB库

zm0011 2008-04-10 05:35:58
加精

为了便于在各平台间移植,TBB库用常见的C++模板和编码样式开发,由GNU MAKE工具构建,兼容多种C++编译器,比如gcc、MS VC++、Intel C++ Compiler等。


在WINDOWS环境下编译TBB库,需要的工具有:

1、能生成WINDOWS程序的C++编译器,比如Intel C++ Compiler或MS VC++,推举使用Intel C++ Compiler(windows版)。我使用的编译环境是Windows 2003 Server sp2 + Intel Cpp Compiler(Win IA32) v10.1.020 + Visual Studio.Net 2008(VC9)。

2、GNU MAKE工具。在WINDOWS平台下运行这类工具,略为麻烦,需要搭建一个既能兼容GNU MAKE又能执行Windows程序的环境,常见的Windows下的UNIX模拟环境,比如MinGW、Cygwin等可以满足这一要求。Gygwin运行Windwos程序不是很方便,而且与TBB库的MAKE脚本搭配得不是很好(需要修改一些地方才能通过编译),这里就只介绍如何在MinGW环境中构建TBB库。


下面先对MinGW做个简单介绍:

MinGW即Minimalistic GNU for Windows 的缩写,是一个建立在GCC和binutils 项目上的编译器系统。和其它GCC的移植版相比,MinGW可以说是最接近Win32的,因为MinGW几乎支持所有的Win32API,这也是MinGW的特色之一。MinGW所连接的程序,不需要任何第三方库就可以直接在Windows下运行,从这一点来看,MinGW更像是VC的跨平台替代品。MinGW可以从MinGW的官方网站 http://www.mingw.org/ 上获得。


安装MinGW的过程很简单,有两种方案。

1、直接从 http://sf.net/project/showfiles.php?group_id=2435 下载各种工具包,然后解压到同一个目录(即你设定的MinGW安装目录)中即可。这种方法的下载速度比较快,也能自由选择工具版本,但是你得对MinGW比较熟悉才行,否则你可能不知道需要下载哪些工具包,以及各种工具包的版本搭配关系。把MinGW各种工具包的最新版本凑合在一起,似乎并不能正常工作,反正我把各种工具包的最新版本混合在一起后,没有成功地构建出TBB库。

2、下载MinGW-5.1.3.exe(http://downloads.sourceforge.net/mingw/MinGW-5.1.3.exe?modtime=1168811236&big_mirror=1),然后用这个自动安装程序从网络安装MinGW。这种方法操作简单,只要点击需要下载的工具包前面的选择框,然后等待程序运行数个小时候即可安装完毕。

实际上为了节省时间,我是这样安装的,先用迅雷下载MinGW-5.1.3.exe,随后运行MinGW-5.1.3.exe,当它开始下载工具包时,点击CANCEL退出程序,然后在MinGW-5.1.3.exe的当前目录下找到mingw.ini这个文本文件,查看[current]项下的工具包文件名列表,从中选择需要的工具包名称,然后从 http://sf.net/project/showfiles.php?group_id=2435 网页找到这些工具包URL,再用迅雷下载。用迅雷的好处是,可以从国内IP获得这些工具包文件,十分钟内就可以下载完毕并安装好一个可使用的MinGW环境。

构建TBB库需要的MinGW工具包有:

mingw-runtime-3.14.tar.gz
w32api-3.11.tar.gz
binutils-2.17.50-20060824-1.tar.gz
gcc-core-3.4.5-20060117-1.tar.gz
gcc-g++-3.4.5-20060117-1.tar.gz
mingw32-make-3.81-2.tar.gz

安装好MinGW(就是把各种工具包解压到一个目录中那么简单)后,别忘了给Windows环境变量中的PATH变量中添加上你的MinGW安装目录。

按照上述步骤搭建好MinGW环境后,从开始菜单中运行 Intel C++ Build Environment for applications running on IA-32,进入Intel C++ Compiler命令行编译环境,再进入TBB源代码解压目录(也就是有Makefile文件的那个目录),然后运行mingw32-make.exe即可成功编译出最新版本的TBB库。

...全文
1495 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiaocha 2010-08-03
  • 打赏
  • 举报
回复
好古老的帖子啊,请问现在还有人用tbb么?现在的tbb是个什么情况呢?谢谢
intel_iclifort 2009-12-22
  • 打赏
  • 举报
回复
写得不错, 推荐了

有使用过最新的ICC 11.1么 ? 貌似10.1不支持VS 2008的
wanglei5695312 2009-12-21
  • 打赏
  • 举报
回复
就是皮股大了点
wanglei5695312 2009-12-21
  • 打赏
  • 举报
回复
不错

567

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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