我尝试使用INSTALL文件中给出的说明安装py2cairo-1.10.0,但在使用./waf配置时,执行会停止显示以下错误
./options()
Setting top to : /home/shubham/Documents/Internetworking/py2cairo-1.10.0
Setting out to : /home/shubham/Documents/Internetworking/py2cairo-1.10.0/build_directory
./configure()
Checking for 'gcc' (c compiler) : ok
Checking for program python : /usr/bin/python
Checking for python version : (2, 7, 4, 'final', 0)
Checking for library python2.7 : yes
Checking for program python2.7-config : /usr/bin/python2.7-config
**command ['/usr/bin/python', '/usr/bin/python2.7-config', '--includes'] returned 1**
你能帮忙解决这个问题吗?
答案 0 :(得分:2)
尽管这是一个旧线程,但我尝试使用virtualvenv从我的kubuntu 14.04中的git编译py2cairo时遇到了同样的问题。
Checking for program python2.7-config : /usr/bin/python2.7-config
command ['/home/mario/progs/python/venvs/science/bin/python', '/usr/bin/python2.7-config', '--includes'] returned 1
我的解决方案是按照INSTALL中的建议使用autogen.sh。
$ python -c "import sys; print sys.prefix"
/home/mario/progs/python/venvs/science
$ ./autogen.sh --prefix=/home/mario/progs/python/venvs/science
然后
$ ./configure
$ make
$ make install
我不得不诉诸sudo make install
,因为需要在/ usr / local /中找到pycairo.h文件。否则,上面的命令正确安装了pycairo。所有测试都通过了!
此致
答案 1 :(得分:1)
最简单的方法是将其安装为Ubuntu软件包。打开终端并发出:
sudo apt-get install python-cairo
Raring当前版本为1.8.8
答案 2 :(得分:1)
当一个人非常决定不全球安装时,你的原始问题非常重要。这是我的情况,我试图在虚拟环境中安装pygtk,pycairo,pygobject。我还没有管理,但是当我完成后我会更新这个答案。
当你说pycairo的“任何版本”时,似乎1.8.10是你能拥有的最好的: https://gist.github.com/ches/1094799
答案 3 :(得分:0)
我刚碰到这个。这是一个bug,请参阅#80688中的pycairo的bugzilla。
这种情况正在发生,因为python配置脚本(我的版本是python2.7-config但你的版本可能不同,最有可能是/ usr / bin)从python脚本变为csh脚本但它被称为python脚本。如果检查日志文件,您将看到它出现语法错误 - 当然,因为它试图将csh脚本作为python运行。
我只是将这个脚本的python版本suv mv到/ usr / bin中,它工作正常。我从ubuntu系统获得了python版本,目标系统是ubuntu。不是解决方法的最佳方法,但我安装了pycairo。
答案 4 :(得分:0)
简单的解决方法是简单地调整损坏的脚本,而不是像建议的那样从另一个发行版中拉出它。这是一线改变......
如果你运行:./waf configure -vv
,你可以看到哪里/什么坏了。
File "/opt/src/py2cairo-1.10.0/.waf-1.6.3-3c3129a3ec8fb4a5bbc7ba3161463b22/waflib/Tools/python.py", line 162, in check_python_headers
for incstr in conf.cmd_and_log(conf.env.PYTHON+[conf.env.PYTHON_CONFIG,'--includes']).strip().split():
调整文件@第162行:
sudo nano /opt/src/py2cairo-1.10.0/.waf-1.6.3-3c3129a3ec8fb4a5bbc7ba3161463b22/waflib/Tools/python.py
变更源:
for incstr in conf.cmd_and_log(conf.env.PYTHON+[conf.env.PYTHON_CONFIG,'--includes']).strip().split():
更改到:
for incstr in conf.cmd_and_log([conf.env.PYTHON_CONFIG,'--includes']).strip().split():
重新执行命令
root@box:/opt/src/py2cairo-1.10.0# ./waf configure
./options()
Setting top to : /opt/src/py2cairo-1.10.0
Setting out to : /opt/src/py2cairo-1.10.0/build_directory
./configure()
Checking for 'gcc' (c compiler) : ok
Checking for program python : /usr/bin/python
Checking for python version : (2, 7, 14, 'final', 0)
Checking for library python2.7 : yes
Checking for program python2.7-config : /usr/bin/python2.7-config
Checking for header Python.h : yes
Checking for program pkg-config : /usr/bin/pkg-config
Checking for 'cairo' >= 1.10.0 : yes
Configuration:
PREFIX : /usr/local
LIBDIR : /usr/local/lib
'configure' finished successfully (0.391s)
root@box:/opt/src/py2cairo-1.10.0#