VS2008下编译BOOST 1.39的ASIO库

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

由于全部编译BOOST库需要的时间太长,而且耗费空间,况且我只需要用ASIO库,所以就没有必要全部编译了。

boost库到www.boost.org上下载。

编译很简单,假设你的boost存放的目录是D:/BOOST_139。

1.运行VS2008的命令提示行,进入D:/BOOST_139/tools/jam;执行build_dist.bat,这样就产生了bjam.exe,该文件位于/tools/jam/stage/bin.ntx86

2.为了方便,将bjam.exe拷贝到D:/BOOST_139/;

3.开始根据自己的需要编译,我只需求ASIO库,因此分别执行:

 

bjam --build-type=complete --with-regex --toolset=msvc-9.0 stage
bjam --build-type=complete --with-system --toolset=msvc-9.0 stage
bjam --build-type=complete --with-thread  --toolset=msvc-9.0 stage
bjam --build-type=complete --with-date_time --toolset=msvc-9.0 stage

 

4.设置路径。启动vs2008,打开“工具”-》“选项”,选择“项目和解决方案”->“vc++ 目录”,将D:/BOOST_139/stage/lib和D:/BOOST_139分别添加到库文件和包含文件中

 

============================================================

其他说明:

以后还需要其他库怎么办?

按照上面的套用就行了。比如你的代码里有#include <boost/serialization/vector.hpp>,很明显你需要serialization库,bjam --build-type=complete --with- serialization --toolset=msvc-9.0 stage。

网上找的一些有用的资料:

编译参数:


stage/install :stage表示只生成库(dll和lib),install还会生成包含头文件的include目录。本人推荐使用 stage,因为install生成的这个include目录实际就是boost安装包解压缩后的boost目录(E:/SDK /boost_1_39_0/boost,只比include目录多几个非hpp文件,都很小),所以可以直接使用,而且不同的IDE都可以使用同一套头文件,这样既节省编译时间,也节省硬盘空间。


toolset :指定编译器,可选的如borland、gcc、msvc(VC6)、msvc-9.0(VS2008)等。


without/with :选择不编译/编译哪些库。本人不需要编译python库,所以排除之,可以根据各人需要选择,默认是全部编译。但是需要注意,如果选择编译python的话,是需要python语言支持的,应该到python官方主页http://www.python.org下载安装。


stagedir/prefix :stage时使用stagedir,install时使用prefix,表示编译生成文件的路径。推荐给不同的IDE指定不同的目录,如VS2008对应的是E:/SDK/boost_1_39_0/vc9/lib,VC6对应的是E:/SDK/boost_1_39_0 /vc6/lib,否则都生成到一个目录下面,难以管理。如果使用了install参数,那么还将生成头文件目录,vc9对应的就是E:/SDK /boost_1_39_0/vc9/include/boost-1_39/boost,vc6类似(光这路径都这样累赘,还是使用stage好)。


build-dir :编译生成的中间文件的路径。这个本人这里没用到,默认就在根目录(E:/SDK/boost_1_39_0)下,目录名为bin.v2,等编译完成后可将这个目录全部删除(没用了),所以不需要去设置。


link :生成动态链接库/静态链接库。生成动态链接库需使用shared方式,生成静态链接库需使用static方式。这里需要注意的是,static 方式下,最终生成的很多静态链接库大小都在几兆、几十兆,甚至接近百兆。这么大的库我们一般是不会采用静态链接方式的,所以这些库不推荐以static方式编译(without掉);如果已经编译了赶快删,肯定没用,否则将占用近1G的硬盘空间。以下是巨型库黑名单:wave、graph、math、 regex、test、program_options、serialization、signals。


runtime-link :动态/静态链接C/C++运行时库。同样有shared和static两种方式,这样runtime-link和link一共可以产生4种组合方式。虽然它和link属性没有直接关系,但我们习惯上,一个工程如果用动态链接那么所有库都用动态链接,如果用静态链接那么所有库都用静态链接。所以这样其实只需要编译2种组合即可,即link=shared runtime-link=shared和link=static runtime-link=static。


threading :单/多线程编译。一般都写多线程程序,当然要指定multi方式了;如果需要编写单线程程序,那么还需要编译单线程库,可以使用single方式。


debug/release :编译debug/release版本。一般都是程序的debug版本对应库的debug版本,所以两个都编译。


 

关于独立版ASIO在不同编译器下的几个使用问题 window平台 一、在VS2019中使用 VS2019 使用微软自己的MSVC编译器,只需要在工程项目属性中 加入2个预编译宏定义项: _WIN32_WINNT=0x0601 ASIO_STANDALONE 将asio提供的include文件包含进工程 在代码文件中 includeasio.hpp” 就可以开始使用了 二、在vscode下配合minGW使用 minGW使用gcc编译器,所以推荐用CMake来构建工程 CMakelists.txt中加入以下配置 add_compile_defi 阅读详情

相关推荐

boost:asio编译

参考:http://hi.baidu.com/need_for_dream/blog/item/c14a28086a504c33e92488b5.html 环境: VS2010,          boost1.38.0,解压缩后放在,D:/boost_1_38_0。  編譯bjam(这个我没有试过,转过来以后参考)利用Visual Studio 2005 Command

TADICAN的专栏 1万+

windows下vs2008编译boost

1.打开Visual Studio 2008 命令提示窗口 2.从命令提示窗口进入D:\boost_1_47_0\tools\build\v2\engine 3.执行 build.bat 会在D:\boost_1_47_0\tools\build\v2 生成bjam.exe 文件. 4.Copy bjam.exe 文件到 D:\boost_1_47_0 下. ...

dicuzhaoqin8950的博客 203

【C++】开源:Boost网络Asio配置使用

Boost网络Asio配置使用

DevFrank的博客 4733

vs2008 64位操作系统 安装boost

网上有32位操作系统的安装方法,链接如下 http://blog.csdn.net/zsdt345a780rfajwet/article/details/8153315 对于64位的操作系统,需要icu和Boost两个。所需的资源是icu4c-4_4_2-Win64-msvc9.zip和boost_1_46_1.7z 将两个文件分别解压,后者我放在了C盘,icu放在了D盘,路径是D:\so

见贤思齐焉 见不贤而内自省也 1002

boost入门(二):Asio编译

前言 经过上一篇文章《boost入门:boost简介》,我们编译boost。下面我们学习下AsioAsio是不需要编译成lib文件,直接在程序中引入头文件即可。Asio依赖的比较多,我们可以看下它的依赖: Boost.System(必须) Boost.Coroutine(可选),如果用spawn()启动协程就需要它 Boost.Regex(可选),如果使用带参数的read_until()或async_read_until()重载boost::regex OpenSSL(可选),如果

q893332169的博客 5220

VS2008编译Boost::asio

 1.下载最新boost-jam-3.1.17-1-ntx86      MY配置http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941&release_id=558771 2.将bjam.exe放到D:/Program Files/boost/boost_1_41_0目录下 3

liufei_learning--脚踏实地,戒骄戒躁! 2046

asio学习之一:asio下载安装

由于http://sourceforge.net该网站被CFW屏蔽了,所以我找了她的镜像服务器。 ftp://sourceforge.nchc.org.tw/和ftp://ftp.jaist.ac.jp/pub/sourceforge/ 从ftp上下载boost.asioboost

cs5512的专栏 3996

VS2008编译BOOST

由于全部编译BOOST需要的时间太长,而且耗费空间,况且我只需要用ASIO,所以就没有必要全部编译了。boost到www.boost.org上下载。编译很简单,假设你的boost存放的目录是D:/BOOST_1391.运行VS2008的命令提示行,进入D:/BOOST_139/tools/jam;执行build_dist.bat,这样就产生了bjam.exe,该文件位于/too

Evanlijia的专栏 794

boost_1_48_0 在VS2008下的安装 Boost.Asio安装

第一步:到官网www.boost.org,下载boost最新版boost_1_48_0.zip   第二步:将boost压缩包解压到C盘根目录下(在C盘操作简单,不会出错),目录为C:\BOOST_1_48_0,里面就是boost的源码和需要编译的文件及文档资料   第三步:用打开一个cmd命令窗口,在C:\Program Files\Microsoft V

GUANYIJUN123的专栏 1449

BoostVS2008下的正确编译

BoostVS2008下的正确编译 2010年11月28日   http://beyrens.blog.163.com/blog/static/9589445220 1052912424648/ 首先下载Boost_1_34_1.zip和Boost-jam-3.1.15.zip前一个是boost主文件包,后一个是编译Boost用的JAME工具.   bjam stage --to...

calw58calw 200

vs2008 编译libtorrent

网上可参考的文章已经有很多很详细了,主要参考: http://hi.baidu.com/chinacharis/blog/item/f58bef76e02ede12b051b92a.html 编译openssl http://hi.baidu.com/chinacharis/blog/item/1725d1dc9cc3c03d5982ddfc.html 编译boost http:/...

weixin_30668887的博客 91

Boost 下载安装编译配置使用指南(含Windows和Linux)

http://www.cnblogs.com/wondering/archive/2009/05/21/boost_setup.html 理论上,本文适用于boost的各个版本,尤其是最新版本1.39.0;适用于各种C++编译器,如VC6.0(部分不支 持),VS2003,VS2005,VS2008,gcc,C++ Builder等。先总结一下Windows系统。 一、下载 ...

编程资料大全 155

ASIO独立安装踩坑日记

先说下环境,云服务器配置的ubuntu18.04,ros采用的ros1,其实我安装的ros里面好像是自带asio的,但是不知为何,在我编译时一直出现下面这类错误。这里可以不用在意,耐心等待安装完成即可,不知道为啥,安装完毕后ros运行不了,重新安装ros即可,之后代码和ros以及asio都可正常运行。之前做了一个项目,服务器上源代码不小心丢失了,只得重新写代码和配置环境,代码中用到了asio独立,这个不是boost里面的。注意这里asio需要走源代码安装,网址在。进去之后下载,然后依次执行下列代码。

BiuBiuBiu_007的博客 762

VS安装Boost

1. 下载Boost2. 解压boost源码包解压到`D:\boost_1_55_0`目录下 3. 生成bjam打开VS2008->VS TOOLS->VS命令提示,在VS命令行中进入D:\boost_1_55_0目录。 执行bootstrap.bat,在当前目录下生成bjam.exe。4. 编译BoostVS命令行中输入如下bjam命令,编译所有的。bjam toolset=msvc

marcellen的专栏 978
上一篇: Javah 使用时报错:找不到类
下一篇: 烦人的迅雷广告
BeRoy
博客等级 码龄24年 33粉丝 19原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值