工作中遇到的这里记录一下,大家可参考。希望对大家有用
下载boost_1_75_0.tar.gz这个资源包下载连接:https://download.csdn.net/download/u011186256/14808828
这个连接是我上传的,为了自己记录一下。
1、解压命令tar -xzvf boost_1_75_0.tar.gz
2、进入boost_1_75_0目录
3、./bootstrap.sh --prifix=要安装的目录例如
./bootstrap.sh --prifix=arm 其中arm是要安装的目录
4、生成有 b2 和 bjam ,以及一个 project-config.jam 的文件,修改project-config.jam的一行(指定自己的编译器):
其中bjam 在tools/build/src/engine/bjam目录下,要拷贝到与boost_1_75_0目录下
修改project-config.jam文件制定编译链,下图是修改完的:
if ! gcc in [ feature.values <toolset> ]
{
using gcc : : /opt/prebuilts/gcc/linux-x86/arm/arm-linux-gnueabihf-7.2.1/bin/arm-linux-gnueabihf-gcc ;
}
下图中的红框是空格,不能删除
5、.执行 ./bjam 即可,这是编译,创建的 lib 文件默认在 stage 文件夹
6. 编译完后,执行 ./bjam install 即进行安装,我的上面 --prefix=arm 指定的目录就是安装目录
生成的lib与include在arm中。
7、测试demo测试文件位置在arm\include\boost
#include <iostream>
#include <boost/asio.hpp>
int main()
{
boost::asio::io_context io;
boost::asio::steady_timer t(io, boost::asio::chrono::seconds(5));
t.wait();
std::cout << "Hello, world!" << std::endl;
return 0;
}
8、编译命令:arm-linux-gnueabihf-g++ demo.cpp -I . -L ../lib/ -lpthread
boost.asio相关治疗连接:https://mmoaay.gitbooks.io/boost-asio-cpp-network-programming-chinese/content/Chapter1.html