Ubuntu上安装Boost C++以及Boost.Python的过程和经验

由于实验的需要,想运行一下这个项目:https://github.com/luckiezhou/DynamicTriad,和所有科研相关类的repo一样,要真正用起来还得填很多坑。不得不说,这个repo的作者已经足够认真负责,但是要跑起来还是不容易,个人感觉,machine learning方面的实验代码,能真正顺利直接跑起来的,不超过20%。

在这个repo第一个dependency就花了些时间,由于需要用到Boost.Python,所以我简单学习了一下。Boost C++被称为C++标准库的后备,是C++标准化进程的开发引擎之一。Boost.Python顾名思义就是C++和Python的接口咯。按照这个repo作者给的链接,似乎应该从这里开始:https://www.boost.org/doc/libs/1_65_1/libs/python/doc/html/building/installing_boost_python_on_your_.html,这个页面就有点让人摸不着头脑了:

you might want to supply the --with-python argument to bjam (or the --with-libraries=python argument to configure)

bjam和configure都是些什么鬼??没办法,老老实实看这里:https://www.boost.org/doc/libs/1_74_0/more/getting_started/unix-variants.html

其实boost的文档也写得特别细心和体贴了!按照这个页面,我们要进行如下操作:

1. 下载boost_1_73_0.tar.bz2.

2. 在文件夹下(例如我把上面这个压缩包放在了:Boost.Python这个目录下),运行:

tar --bzip2 -xf boost_1_73_0.tar.bz2

虽然说Boost文档已经写得很好了,但是还有些思路清奇的地方:按道理来说,我们解压以后肯定是进入到目录下执行一些命令啊,可文档洋洋洒洒讲了些乱七八糟的东西:3   Header-Only Libraries,4   Build a Simple Program Using Boost,不是说这些不重要,但完全可以放到后面再讲啊。再往下看终于看到了:5   Prepare to Use a Boost Library Binary

3. 我们进入到解压目录,运行:

./bootstrap.sh --with-libraries=python

之所以带后面这个,是因为这一步介绍到:consider using the --show-libraries and --with-libraries=library-name-list options to limit the long wait you'll experience if you build everything.

呵呵,所以和前面页面中说的bjam和configure还是不一样啊。

4. 上一步运行完之后,就会在目录下产生:project-config.jam,bootstrap.log,b2三个文件,再运行:

sudo ./b2 install

这步运行完之后,官方文档就又开始发散了,开始讲:5.2   Or, Build Custom Binaries,6   Link Your Program to a Boost Library,也许对开发人员很重要,但是对我们来讲,就是想要把Boost.Python用起来,所以参考一些朋友的博客:https://www.cnblogs.com/LyndonYoung/articles/5288618.htmlhttps://www.cnblogs.com/gaowengang/p/8994370.html

5. 输入:

cd /etc/profile.d

到这个目录下,然后创建一个文件boost.sh:

sudo touch boost.sh

我们用gedit打开并编辑这个文件:

sudo gedit boost.sh

在文件中输入以下内容:

#!/bin/sh
BOOST_ROOT=/home/%我的用户名%/Boost.Python/boost_1_73_0
BOOST_INCLUDE=/usr/local/include/boost
BOOST_LIB=/usr/local/lib
export BOOST_INCLUDE BOOST_LIB BOOST_ROOT

保存后关闭,依次执行:

sudo chmod +x boost.sh

source boost.sh

这些步骤的主要目的就是设置环境变量。到此为止,基本上把Boost.Python装好了,后面继续填这个repo剩下的坑。就先总结这么多。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值