更改 configure.ac 中的 PYTHON_PREFIX

Posted

技术标签:

【中文标题】更改 configure.ac 中的 PYTHON_PREFIX【英文标题】:Change the PYTHON_PREFIX in configure.ac 【发布时间】:2017-08-07 00:07:31 【问题描述】:

我想更改python前缀

我想将我的文件安装在 $(myown_pfx)/usr/lib/python2.7/site-packages

现在默认情况下,pythondir 似乎指向 $(prefix)/usr/lib/python2.7/site-packages

我的 configure.ac 中有以下内容

 AM_PATH_PYTHON([2.7])
 AC_SUBST([PYTHON_PREFIX], ["$myown_pfx"])

但是,我的预期文件仍然安装,就好像 PYTHON_PREFIX 从未更改为 $myown_pfx,它仍然是默认的 $prefix。

我基本上想覆盖 PYTHON_PREFIX,但没有成功,我错过了什么?

我一直在阅读此文档 https://www.gnu.org/software/automake/manual/html_node/Python.html

【问题讨论】:

【参考方案1】:

遗憾的是AM_PATH_PYTHON 无条件设置如下:

AC_SUBST([PYTHON_PREFIX], ['$prefix'])

可以做什么(除了重新计算pythondir 类似于AM_PATH_PYTHON 所做的)是将'$prefix' 替换为$myown_pfx

pythondir=`echo "$pythondir" | sed s,'$prefix',"$myown_pfx",`

或者更好:

pythondir=`echo "$pythondir" | sed "s,$PYTHON_PREFIX,$myown_pfx,"` 

【讨论】:

以上是关于更改 configure.ac 中的 PYTHON_PREFIX的主要内容,如果未能解决你的问题,请参考以下文章

从 configure.ac 中的文件读取版本号

如何执行 shell 命令,并将输出分配给 configure.ac 中的 AC_DEFINE 变量

autoreconf:需要“configure.ac”或“configure.in”

如果 configure.ac 可用,是不是应该分发“配置”脚本?

如何使用 configure.ac 来包含 AC_INCLUDES_DEFAULT 的内容?

Linux下使用automakeautoconf生成configure文件