本博客(http://blog.csdn.net/livelylittlefish )贴出作 者(三二一@小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正!
Boost库的命名规则
例如:
Win32平台
- libboost_filesystem-vc80-mt-sgdp-1_40.lib
Linux平台
- libboost_filesystem.so.1.40.0
- libboost_filesystem.a
命名规则:
前缀:lib,但在Win32平台,只有静态库有lib前缀
库名称:以boost_开头的库名称,例子中为boost_filesystem
编译器标识:编译该库文件的编译器名称和版本,例子为-vc80
多线程标识:若支持多线程,则使用-mt;否则,不出现多线程标识
ABI标识:标识Boost库的几个编译链接选项
s:static,静态库标识
gd:debug版标识
p:使用STLpor而不是编译器自带的STL
例子为使用STLport的静态debug版的库
版本号:Boost的版本号,例子为1_40
扩展名:win32平台为.lib,Linux平台为.a或.so
链接Boost程序的两种方式
在编译命令行直接指明库文件全路径
使用-L指定库文件所在路径,再用-l指定库文件名
VC编译器支持自动链接技术
使用语法"#pragma comment(lib, XXX)"
将需要用的库lib文件保存在vc的搜索路径下,编译器就会自动根据编译选项找到合适的库链接成可执行文件
GCC不支持自动链接技术
在Linux平台上,只需要使用如下命令将Boost生成的各种动态库、静态库安装到相应目录即可使用Boost。
# ./bjam install
Technorati 标签: Boost