运行“make”安装 deskbar-applet-2.32.0 时出现“configure:错误:找不到 Python 标头”和语法错误

运行“make”安装 deskbar-applet-2.32.0 时出现“configure:错误:找不到 Python 标头”和语法错误

我是 Ubuntu 新手。我试图安装 deskbar-applet-2.32.0,但是 make 命令不起作用。

(base) jo18@jo18:~/Downloads/deskbar-applet-2.32.0$ ./configure 

返回此错误:

checking for headers required to compile python extensions...   File "<string>", line 1
    import sys; print sys.prefix
                        ^
SyntaxError: invalid syntax
  File "<string>", line 1
    import sys; print sys.exec_prefix
                        ^
SyntaxError: invalid syntax
not found
configure: error: could not find Python headers

我的 /usr/local/lib 有 4 个文件夹:

python2.7
python3.6
python3.7
R

跑步时

(base) jo18@jo18:~/Downloads/deskbar-applet-2.32.0$ ./configure PYTHON=/usr/local/lib/python3.7

我得到:

Using config source xml:merged:/etc/gconf/gconf.xml.defaults for schema installation
Using $(sysconfdir)/gconf/schemas as install directory for schema files
checking whether /usr/local/lib/python3.7 version >= 2.4... configure: error: too old

我的计算机上现有的 Python 版本:

(base) jo18@jo18:~/Downloads/deskbar-applet-2.32.0$ ls /usr/bin | grep python
dh_python2
python
python2
python2.7
python2.7-config
python2-config
python2-futurize
python2-pasteurize
python3
python3.6
python3.6m
python3.7
python3.7-config
python3.7m
python3.7m-config
python3m
python-config
x86_64-linux-gnu-python2.7-config
x86_64-linux-gnu-python3.7-config
x86_64-linux-gnu-python3.7m-config
x86_64-linux-gnu-python-config

任何帮助都非常感谢。我正在运行 Ubuntu 18.04 和 Windows 10 双启动。(base)自从我安装了 anaconda-navigator 后,终端中就出现了。

答案1

脚本的最后一行configure给出一个错误:

checking whether usr/local/lib/python2.0 version >= 2.4... configure: error: too old

首先,你似乎给出了,这意味着“使用在目录中找到的usr/local/lib/python2.0pythonusr位于当前目录中“。我想你的意思是/usr,不是usr。 ”

无论如何,如果您同时安装了 python2 和 2.4,则需要将 configure 脚本指向 2.4 版本,因为这是它所需要的。因此,尝试运行此脚本(假设您已安装 python 2.4 /usr/local/lib/python2.4):

./configure PYTHON=/usr/local/lib/python2.4

如果有效,请再试make一次。

答案2

找到解决方案这里

通常 /usr/bin/python 应该只是 Python3 或 Python2 的符号链接,

如果要指向 Python3,我们需要删除该链接,然后创建指向 Python2 的符号链接

rm /usr/bin/python

ln -s /usr/bin/python2.7 /usr/bin/python

这将为 Python2.7 创建一个符号链接,无需重新启动。

答案3

我在构建 miro 库时遇到了同样的问题。这似乎是错误的,而是需要传递python version标志,--version

./configure PYTHON="/absolue_path_to_your_enviroment/bin/python2"

并在配置脚本中将版本更改为--version

还可以更改配置脚本

#include <Python.h>

到,

#include <python2.7/Python.h>

相关内容