Boost库的安装与使用
Boost库在Windows及Linux上的安装及使用
Windows with VS2010
1.安装VS2010
2.下载安装Python (编译Boost库时需要)
https:///
3.下载 最新boost库
/projects/boost/files/latest/download
4.解压到指定目录。
例如:D:\boost_1_57_0
这时,大部分库可以用了,但是与操作系统相关的部分还需要Build.比如thread库。
5.编译boost库
运行command window. 开始菜单/运行/cmd
输入Dos命令:d:
输入Dos命令:cd d:\boost_1_57_0
运行批处理:bootstrap.bat
运行完后输入命令:./b2
编译结束后就可以使用了
6. 设置VS2010
添加include 路径:d:\boost_1_57_0
添加library路径: d:\stage\lib (编译好后产生的)
Linux with GCC
1.下载安装Python (编译Boost库时需要)
https:///
2.下载 最新boost库
/projects/boost/files/latest/download
3.解压到指定目录
例如:/usr/boost_1_57_0
这时,大部分库可以用了,但是与操作系统相关的部分还需要Build.比如thread库。
4.Build boost库
运行命令窗口,将当前路径切到/usr/boost_1_57_0
输入命令:./bootstrap.sh
运行完后输入命令:./b2
编译结束后就可以使用了
5.编译使用boost库的项目
例如程序文件为test.cpp
g++ -c test.cpp -o test.o –I/usr/boost_1_57_0
g++ -o test test.o boost_thread.a–lstc++ -pthread –lrt
-L/usr/boost_1_57_0/stage/lib
注意:如果在使用STL库时报很多undefine的错误,多半是没有link STL 库的原因。
需要使用 “-lstc++”Option. 如果是多线程,需要-pthread。
Boost库学习指南与使用说明
Boost库学习指南和说明文档作者:刘刚email:ganghust@个人主页:2007年11月17号Boost中文站Boost库是一个经过千锤百炼、可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一。
Boost库由C++标准委员会库工作组成员发起,在C++社区中影响甚大,其成员已近2000人。
Boost库为我们带来了最新、最酷、最实用的技术,是不折不扣的“准”标准库。
本站主要介绍Boost相关的中文技术文档。
Boost入门boost库简介Windows和Solaris上Boost安装和编译走进Boost(Boost使用入门)Boost编程技术C++Boost Thread线程编程指南Boost中文文档C++Boost Assign文档C++Boost Regex文档C++Boost Array文档Boost源码剖析Boost源码剖析之:型别分类器—type_traitsBoost源码剖析之:泛型指针类any之海纳百川Boost源码剖析之:增强的std::pair——Tuple TypesBoost库学习指南和说明文档 (1)Boost入门 (1)Boost编程技术 (1)Boost中文文档 (1)Boost源码剖析 (2)C++Boost学习资源列表 (3)C++Boost库简介 (3)Windows和Solaris上Boost安装和编译 (5)0前言 (5)1下载Boost+解包(略) (6)2编译jam (6)3设置环境变量 (6)4编译Boost (7)走进Boost[Boost使用入门] (8)0摘要 (8)1Boost简介 (9)2Boost下载和Boost安装 (9)3Boost组件lexical_cast (10)4小结 (14)5注释 (14)Boost中的智能指针 (15)Boost介绍 (15)智能指针 (16)智能指针的30秒介绍 (16)深入shared_ptr实现 (19)C++Boost Thread编程指南 (23)0前言 (24)1创建线程 (24)2互斥体 (26)3条件变量 (29)4线程局部存储 (33)5仅运行一次的例程 (35)6Boost线程库的未来 (36)7参考资料: (36)C++Boost库文档索引 (37)1按字母顺序库列表 (38)2按主题库列表 (40)C++Boost学习资源列表boost的老巢boost的中文站:CSDN--Boost系列专题/Subject/336/index.shtmLinux伊甸园论坛-STL/boost专区/forum/forumdisplay.php?f=37dozb的blog C++Boost库简介boost是一个准标准库,相当于STL的延续和扩充,它的设计理念和STL比较接近,都是利用泛型让复用达到最大化。
linux下安装boost库
5.上一步完成之后,执行命令
./b2 install --prefix=/home/aizhihua/boost // /home/aizhihua/boost 需要自己给一个安装路径
安装完成之后,进入设置的安装路径下的boost目录,会有一下两个文件夹
一个是头文件,一个是库文件。 6. 将库文件移到/usr/lib下
sudo mv -f ./lib/* /usr/lib
7.将头文件复制到/usr/include下
sudo cp -rf ./include/boost /usr/include
8.测试代码
#include <iostream> #include <boost/lexical_cast.hpp> int main(){
611053请尝试刷新页面或更换浏览器重试
linux下安装 boost库
1. 下载boost(以1.75版本为例) 2. 下载完成之后,解压压缩包
tar -xjf boost_1_75_0.tar.bz2 // 其中boost_1_75_0.tar.bz2为下载好的压缩包
3.解压完成之后,进入到文件夹中
int value = boost::lexical_cast<int>("123"); std::cout << value << std::endl; return 0; }
有以上结果代表安装成功。
WindowsMinGW安装Boost与CLion的配置
WindowsMinGW安装Boost与CLion的配置关于 boost 在 Windows 下的使⽤ gcc 安装与 CLion 的配置, 能够查到的英⽂资料都⽐较少, 踩过坑后记录⼀下.MinGW 安装 Boost下载并解压 Boost ⽂件夹到⼀个稳定的⽂件夹, 此时我的⽂件名为 boost_1_69_0.在进⾏以下⼏步之前请先把 gcc 添加⾄环境变量.在该⽂件夹⽬录下打开命令⾏, ⾸先执⾏:bootstrap gcc 如果你只安装指定的少数⼏个库, 可以使⽤:b2 --show-libraries 得到你可以在这⾥单独安装的所有库的名称. 然后你可以安装指定的某个库, 如 program_options 和 filesystem:b2 toolset=gcc --with-program_options --with-filesystem 或者你想⼀次性编译完毕, 以后就⽆需再进⾏编译:b2 toolset=gcc 以上的指令复制⾄ cmd 可直接执⾏全部编译完成的时间视处理器性能⽽定, ⼤概在⼗分钟左右.此时你可以在 boost 根⽬录下的 stage/lib ⽂件夹下看到以 a 为⽂件扩展名的静态库.CLion CMakeLists 配置 Boost⽹上搜索到的教程容易导致以下⼏个误区认为链接库的⽂件夹⽬录在 bootstrap_1_69_0/libs 下⽆法找到原因为什么⽆法成功 find_package在 Boost 的配置中, 需要指明 BOOST_ROOT, BOOST_INCLUDEDIR, BOOST_LIBRARYDIR 这三个变量. 我的 boost ⽂件夹放在 C:/Local :set(Boost_DEBUG on)set(Boost_DETAILED_FAILURE_MSG ON)#查看 Boost 配置问题所在set(BOOST_ROOT C:/Local/Boost_1_69_0)set(BOOST_INCLUDEDIR ${BOOST_ROOT})set(BOOST_LIBRARYDIR ${BOOST_ROOT}/stage/lib)find_package(Boost COMPONENTS REQUIRED program_options)提⽰ find_package 失败.查看 debug 信息:-- [ .../FindBoost.cmake:1809 ] Searching for PROGRAM_OPTIONS_LIBRARY_RELEASE: boost_program_options-mgw51-mt-1_69;boost_program_options-mgw51-mt;boost_program_options-mt-1_69;boost_program_options-mt;boost_program_options-mt;boos -- [ .../FindBoost.cmake:1862 ] Searching for PROGRAM_OPTIONS_LIBRARY_DEBUG: boost_program_options-mgw51-mt-d-1_69;boost_program_options-mgw51-mt-d;boost_program_options-mt-d-1_69;boost_program_options-mt-d;boost_program_options-m 此时对照 stage/lib ⽂件夹下的⽂件名, 发现名称为libboost_program_options-mgw51-mt-d-x64-1_69.a 或libboost_program_options-mgw51-mt-d-x32-1_69.a因此, 只需将 x64 ⽂件中的⽂件名删掉 “-x64” 即可.故在 stage ⽂件夹下新建⼀个 python3 重命名⽂件脚本:# -*- coding: utf-8 -*-# renamer.pyfrom os import listdir, renameimport refor filename in listdir('lib'):new_filename = re.sub('libboost(.*)-x64(.*).a', r'libboost\1\2.a', filename)rename('lib/' + filename, 'lib/' + new_filename)执⾏后再次进⾏ cmake, 就可以成功 find_package此时按照⽹上教程, 完整的 CMakeLists.txt 为:cmake_minimum_required(VERSION 3.13)project(dot)set(CMAKE_CXX_STANDARD 14)set(Boost_DETAILED_FAILURE_MSG ON)set(Boost_DEBUG on)set(BOOST_ROOT C:/Local/Boost_1_69_0)set(BOOST_INCLUDEDIR ${BOOST_ROOT})set(BOOST_LIBRARYDIR ${BOOST_ROOT}/stage/lib)find_package(Boost COMPONENTS REQUIRED filesystem program_options)add_executable(dot main.cpp command.h)include_directories(${BOOST_ROOT})target_link_libraries(dot ${Boost_LIBRARIES})#Boost_LIBRARIES 为 find_package ⾃动⽣成的变量 CLion 配置 Boost 完成.参考资料(编译时mingw位数需要与系统对应)。
boost库安装教程
boost库安装教程Win将 D:\boost 引⼊⼯程即可。
Linux下载解压后编译:./bootstrap.shsudo ./b2 --buildtype=complete install# sudo ./b2 --buildtype=complete stagestage选项指定Boost使⽤本地构建。
如果使⽤install选项则编译后会把Boost安装到默认路径下(/usr/local)。
MAC下载boost库解压编译在解压后的⽂件夹内打开终端,执⾏:./bootstrap.shsudo ./b2 --buildtype=complete install# sudo ./b2 --buildtype=complete stagestage选项指定Boost使⽤本地构建。
如果使⽤install选项则编译后会把Boost安装到默认路径下(/usr/local)。
添加库⽂件位置安装好后,Xcode的项⽬中还是找不到Boost,需要⼿动将Boost的路径导⼊进去。
点击左侧⼯程名称,在右侧的Build Settings标签⾥点击ALL找到其中的Search Paths下的Header Search Paths⼀栏,双击增加⼀个⽬录,填⼊⽬录位置,/usr/local/include/,然后找到Library Search Paths⼀栏,填⼊/usr/local/lib,这样就能正常调⽤Boost库了。
测试#include <iostream>#include <boost/version.hpp>int main(int argc, const char * argv[]) {std::cout<<"Boost版本:"<<BOOST_VERSION<<std::endl;return 0;}Boost版本:107100Program ended with exit code: 0。
boost的编译使用
boost的编译使用Boost是一个流行的C++库,它提供了许多功能强大的工具和组件,包括容器、算法、并发编程、图形学、网络编程等。
要使用Boost库,首先需要下载并安装Boost库,然后在编译和链接你的C++程序时包含相应的Boost头文件和链接Boost库文件。
下面我将从编译和使用Boost库的角度来详细介绍。
1. 下载和安装Boost库。
首先,你需要从Boost官方网站下载最新的Boost库源代码。
然后,解压缩文件并按照官方文档中的指导进行安装。
通常情况下,Boost提供了一个名为bootstrap.bat(Windows)或者bootstrap.sh(Linux)的脚本,你可以运行这个脚本来配置Boost 库。
接着,运行b2命令来编译Boost库。
2. 编译和链接Boost库。
一旦Boost库安装完成,你就可以在你的C++程序中使用它了。
在编译你的程序时,确保你的编译器能够找到Boost库的头文件。
你可以使用编译器的命令行选项或者在你的IDE中配置头文件搜索路径。
在链接你的程序时,确保你的编译器能够找到Boost库文件。
你需要指定Boost库文件的路径和库名字,具体的方法取决于你使用的编译器和操作系统。
3. 使用Boost库。
一旦你的程序成功编译和链接了Boost库,你就可以在你的代码中包含相应的Boost头文件,并使用Boost提供的功能和组件了。
比如,如果你想使用Boost的智能指针,你可以包含<boost/shared_ptr.hpp>头文件,并使用boost::shared_ptr类来管理动态分配的对象。
总之,要使用Boost库,你需要下载、安装Boost库,配置你的编译器,包含Boost头文件,链接Boost库文件,并在你的代码中使用Boost提供的功能和组件。
希望这些信息能够帮助你成功地编译和使用Boost库。
boost安装
或
# ./bjam --build-type=complete --layout=tagged stage
或
# ./bjam
方法2:
# cd /usr/src/boost_1_40_0/tools/jam
# ./build_dist.sh
也会完成Linux平台bjam和Boost的所有编译工作,并生成所有调试版、发行版的静态库和动态库。但不推荐该方式。
方法2:
(1) # cd /usr/src/boost_1_40_0/tools/jam/src
(2) # ./build.sh
编译完成后:
生成的可执行文件为
# /usr/src/boost_1_40_0/tools/jam/src/bin.linuxx86/bjam
需要将bjam.exe拷贝到源代码所在的目录
3. 完整编译Boost
对Boost进行完整编译,生成所有调试版、发行版的静态库和动态库。
方法1:
# cd /usr/src
# wget /projects/boost/files/boost/1.40.0/boost_1_40_0.tar.bz2
# tar --bzip2 -xvf boost_1_40_0.tar.bz2
# cd boost_1_40_0
# bjam --toolset=gcc --build-type=complete stage
或
# ./bjam --build-type=complete --layout=versioned //库名带gcc版本
# cp bin.linuxx86/bjam /usr/src/boost_1_40_0
boost编译流程
boost编译流程Boost是一个由一系列C++库组成的开源项目,这些库提供了广泛的功能,用于增强C++语言的能力。
Boost库被广泛应用于C++开发中,它可以提供许多有用的功能,例如算法、容器、多线程、文件系统、正则表达式等等。
Boost库的编译流程相对简单,本文将介绍Boost库的编译流程及相关内容。
一、获取Boost库源代码二、解压源代码包1. boost - 该目录包含了所有的Boost库源代码2. doc - 该目录包含了Boost库的文档3. libs - 该目录包含了所有的Boost库的源代码和构建文件4. tools - 该目录包含了一些构建和安装工具三、构建Boost库进入解压后的源代码目录,打开终端或命令提示符,执行以下命令,进入Boost库的构建环境:$ ./bootstrap.sh (Linux和MacOS)或者$ .\bootstrap.bat (Windows)执行成功后,会生成一个名为b2或bjam的可执行文件,该文件是用于构建Boost库的工具。
四、编译Boost库在构建环境中执行以下命令,编译Boost库:$ ./b2 (Linux和MacOS)或者$ .\b2.exe (Windows)默认情况下,Boost库会在构建目录下的stage/lib目录中生成编译好的库文件。
使用者可以自行设置构建参数,控制Boost库的编译行为。
例如,可以通过指定编译器、选择要构建的库等方式来定制Boost库的编译。
五、安装Boost库执行以下命令,将编译好的Boost库安装到系统中:$ sudo ./b2 install (Linux和MacOS)或者$ .\b2.exe install (Windows)默认情况下,Boost库会被安装到系统的默认位置。
但是,使用者也可以通过设置install_path参数来指定安装路径。
六、配置开发环境将Boost库安装到系统后,需要配置开发环境,以便编译和链接Boost库。
boost.python用法
boost.python用法Boost.Python(简称"bpl")是一个跨语言的库,用于将C++代码与Python 代码进行互操作。
它允许Python开发人员使用C++库,或者用C++编写Python扩展模块。
Boost.Python的用法如下:1. 准备环境:- 安装Python,确保已经正确配置Python环境变量。
- 下载Boost库,并通过编译器将其安装到系统中。
2. 使用Boost.Python库:- 在C++代码中包含<boost/python.hpp>头文件。
- 定义需要与Python交互的C++类和函数。
- 使用BOOST_PYTHON_MODULE宏定义一个导出模块,将C++类和函数导出到Python环境中。
cpp#include <boost/python.hpp>void sayHello() {std::cout << "Hello, world!" << std::endl;}BOOST_PYTHON_MODULE(example) {boost::python::def("say_hello", sayHello);}3. 编译链接:- 将定义的C++代码编译为共享库文件。
- 链接Boost.Python库和Python库。
g++ -shared -o example.so example.cpp -lboost_python-lpythonX.X- `example.so`是编译生成的共享库文件,其中`X.X`是你所使用的Python 版本的主要版本号。
4. 在Python中使用Boost.Python模块:- 将生成的共享库文件加载到Python中。
- 调用导出的C++函数或类。
pythonimport exampleexample.say_hello()以上是Boost.Python库的基本使用方法。
boost在VS2010下的安装
其他版本也可用类似的方法进行编译
第一步:到官网,下载boost最新版boost_1_47_0.zip
第二步:将boost压缩包解压到C盘根目录下(在C盘操作简单,不会出错),目录为C:\BOOST_1_47_0,里面就是boost的源码和需要编译的文件及文档资料
第三步:用打开一个cmd命令窗口,在C:\Program Files\Microsoft Visual Studio 10.0\VC\bin目录下找到VCVARS32.bat,拖到cmd命令窗口,按回车
第四步:将cmd中的目录跳转到C:/boost_1_47_0/tools/build/v2下,拖动bootstrap.bat批处理文件到cmd,,按回车键,随即就会在C:/boost_1_47_0/tools/build/v2下生产一个bjam.exe和b2.exe。
第五步: 将bjam.exe复制或移动到boost的根目录下,即C:/boost_1_47_0下面。
然后在vc2010的工程目录下include项中包含C:\boost_1_47_0\bin.v2\libs,在lib目录下包含boost_files目录(自己最后保存编译的dll和lib文件的目录)
使用时,要在工程中包含相应的头文件。
最后申明:我是亲手实验每一步的过程所得结果,因为编译器版本和操作的原因,如您不能正常编译,请仔细检查原因或与给我留言。
第六步:将cmd命令中的目录跳到oolset=msvc-10.0 --build-type=complete stage 回车,等待20多分钟,编译就完成了
注意:整个操作过程中cmd命令窗口必须保证是开始打开的那个
附1:cmd 目录跳转指令 举例,例如,跳到d盘下的一个名为test的目录下,则输入cd d:\test按回车。
C++的boost库的编译安装
ICU编译(VS2010):ICU提供了unicode和国际化支持,目前的版本是 4.8.1。
ICU的主页是/。
(1). 下载可以从/projects/icu/files/下载源代码版本。
4.8.1是VS2010的,4.4.2才是VS2008的,如果是2010要做转换。
(2). 编译ICU的编译比较简单,打开ICU源代码目录下的source\allinone\allinone.sln,需要转换到VS2008格式,直接转换即可。
然后,选择release,Rebuild Solution即可。
(3). 测试将编译出来的bin目录加入到系统的PATH目录中去。
然后,重新打开allinone.sln工程。
需要通过测试的项目1. cintltst项目2. intltest项目3. iotest分别设置成启动项目,运行即可。
2. bzipbzip的主页是/,从/downloads.html下面下载源代码包即可,boost直接使用源代码来进行编译。
3. zlibzlib的主页是/,/projects/gnuwin32/files/zlib/从该网页下面下载源代码包即可,boost直接使用源代码来进行编译。
4. pythonpython的主页是/,下载python的2.5.2版本,安装即可。
boost默认是会编译python,并且会自动寻找python的安装目录。
ICU编译(MinGW):还未成功编译第一步:到官网,下载boost最新版boost_1_47_0.zip第二步:将boost压缩包解压到C盘根目录下(在C盘操作简单,不会出错),目录为C:\BOOST_1_47_0,里面就是boost的源码和需要编译的文件及文档资料第三步:用打开一个cmd命令窗口,在C:\Program Files\Microsoft Visual Studio 10.0\VC\bin目录下找到VCVARS32.bat,拖到cmd命令窗口,按回车第四步:将cmd中的目录跳转到C:/boost_1_47_0/tools/build/v2下,拖动bootstrap.bat批处理文件到cmd,,按回车键,随即就会在C:/boost_1_47_0/tools/build/v2下生产一个bjam.exe和b2.exe。
