当我定义PATH变量时,为什么还应该使用--with-boost选项

时间:2017-12-23 22:08:36

标签: ubuntu boost configure

我很想听听你解决这个问题的解释和方法,这个问题我已经面对这么长时间了。

我在远程集群中工作,不允许使用sudo命令,并且不允许对$ HOME分支上的目录执行任何操作 ($HOME=/storage/5/trentalove

我需要配置

$HOME/external/trentacoollime

使用boost $HOME/boost_1_65_1使用来自http://www.boost.org/users/history/version_1_65_1.html

的boost_1_65_1.tar.bz2来源安装的库

(请注意,sudo apt-get install libboost-all-dev是不允许的。)

然后,我在.bash_profile中定义我的PATH变量并导出为 `export PATH = $ HOME / boost_1_65_1:$ PATH'

但是,当我在$ HOME / external / trentacoollime目录中配置

./configure

我收到了一条错误消息

  

configure:error:找不到Boost标题版本> = 1.41.0

当我配置

./configure --with-boost=../../boost_1_65_1

它没有给我任何错误消息并且已成功配置。

我的猜测是,因为我定义并将PATH变量导出到boost目录,所以当我执行--with-boost=../../boost_1_65_1命令时,我不需要./configure选项。但是,我需要它。

有人能解释我错过了什么吗?

P.S。我在自己的机器上使用sudo apt-get install libboost-all-dev执行了同样的操作,在/usr/include目录下安装了boost_1_65_1。 然后我仍然可以使用$HOME/external/trentacoollime./configure选项配置--with-boost=($ PATH的定义方式与集群中的相同)。 但请注意,我无法在群集中实现相同的策略,因为我没有权限使用sudo,也没有任何类型的mv,cp,ln命令/usr/include,它位于比{{{1}更高的分支上。 1}}目录。

1 个答案:

答案 0 :(得分:0)

使用PATH对autotools没有影响(除非在配置过程中找到要执行的二进制文件)。

除非您的具体项目已做出其他安排,否则您需要提供except Exception as e: excep = logger.info("an error I would like to log") 。有时他们会使用--with-boost或选择专用的环境变量(例如pkg-configBOOST_DIR)。

我不认为其中任何一个都受基于autotools项目的欢迎。