linux安装boost.python

前言

boost.python库被用于C++与Python代码间的交互,提供了两者间大部分数据类型的转换

相关环境

操作系统:Ubuntu 20.04
python版本:Python 3.8
boost版本:boost 1.78.0

安装

1.boost.python检查与卸载

在安装boost之前需要检查系统中是否已经安装boost库,若系统中存在则需要卸载干净。
(1)包管理器安装方式的检查 卸载

系统类别检查命令
redhatrpm -qf/usr/include/boost/version.hpp
debiandpkg -S /usr/include/boost/version.hpp

检查到了则需卸载:

系统类别检查命令
redhatsudo yum remove libboost***-dev
debiansudo apt-get autoremove libboost***-dev

(***为版本号)

(2)编译方式安装的检查 卸载
通过find命令查找boost/version.hpp

sudo find / -iname version.hpp

查看boost版本

cat version.hpp| grep "BOOST_LIB_VERSION"

卸载boost

sudo rm -r -f /usr/local/include/boost*
sudo rm -f /usr/local/lib/libboost*
(*为相关版本信息)

2.boost.python安装

(1)安装包下载

 boost安装包下载: [https://www.boost.org/](https://www.boost.org/)

(2)解压,进入首层目录(采用root用户)

sudo -i
cd /***/boost_1_78_0 (***是相关的存储位置信息)

(3)找到python安装位置

boost.python在编译的时候需要链接到python的解释器,默认会使用在/usr里面的那个python。而老版的ubuntu的python可能是2.x版本的,建议指定为你正在使用的版本。我们可以激活conda的环境,然后使用whereis python命令查找

conda activate your_envs
which python
# 记下python的路径,一般是/xx/xx/bin/python

–prefix 是要安装到的路径,如果有root权限可以按照到默认路径,这样也方便cmake找
–with-python指定安装boost.python38这个库。(如果安装所有库可以添加–with-libraries=all)
–with-python-root指定python解释器的位置,也就是前面which得到的路径

./bootstrap.sh --prefix=/usr/path/of/boost --with-python=python3.8 --with-python-root=/your/python/path

(4)编辑project_config.jam文件

vim project_config.jam

在project_config.jam中python对应地方加入指定版本的python 的include和lib

 Python configuration
import python ;
if ! [ python.configured ]
{
    using python : 3.9 
    : "/xxx/bin/python" 
    : "/xxx/include"
    : "/xxx/lib";
}
表示意义:版本号 : 可执行文件位置:头文件目录:库文件目录
注意:这里为python所在位置,根据自己实际情况来

(5)编译安装
.

/b2
./b2 install --with-python include="/usr/include/python3.8"

这里include对应python的include目录。
安装成功会在 /usr/local/include/boost/usr/local/lib 下看到boost的头文件和库文件(libboost*.so)

(6)在profile中添加boost路径(编译成功后,会提示路径)

vim /etc/profile

添加内容为:

export CPLUS_INCLUDE_PATH=/home/pigeon/boost/boost_1_78_0:$CPLUS_INCLUDE_PATH
export LIBRARY_PATH=/home/pigeon/boost/boost_1_78_0/stage/lib:$LIBRARY_PATH
export LD_LIBRARY_PATH=/home/pigeon/boost/boost_1_78_0/stage/lib:$LD_LIBRARY_PATH

(7)运行环境

source /etc/profile

(8)更新连接库

ldconfig

参考链接

linux下boost.python安装过程记录
Boost.python安装和踩坑记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值