2013-10-01 3 views
3

При запуске пип установки, я получаю ошибки, как это:пип установка терпит неудачу с FileNotFoundError: setup.py

$ pip install pycairo 
Downloading/unpacking pycairo 
    You are installing a potentially insecure and unverifiable file. Future versions of pip will default to disallowing insecure files. 
    Downloading pycairo-1.10.0.tar.bz2 (246kB): 246kB downloaded 
    Running setup.py egg_info for package pycairo 
    Traceback (most recent call last): 
     File "<string>", line 16, in <module> 
    FileNotFoundError: [Errno 2] No such file or directory: '/home/naught101/.virtualenvs/virtualenv-3/build/pycairo/setup.py' 
    Complete output from command python setup.py egg_info: 
    Traceback (most recent call last): 

    File "<string>", line 16, in <module> 

FileNotFoundError: [Errno 2] No such file or directory: '/home/naught101/.virtualenvs/virtualenv-3/build/pycairo/setup.py' 

---------------------------------------- 
Cleaning up... 
Command python setup.py egg_info failed with error code 1 in /home/naught101/.virtualenvs/virtualenv-3/build/pycairo 
Storing complete log in /home/naught101/.pip/pip.log 

Это происходит для pycairo, глотка.

$ pip --version 
pip 1.4.1 from /home/naught101/.virtualenvs/virtualenv-3/lib/python3.3/site-packages (python 3.3) 

ответ

7

pycairo не построен Setuptools, и, следовательно, не может быть установлен pip.

В документации INSTALL говорит:

Install Procedure 
----------------- 
$ ./waf --help  # shows available waf options 
$ ./waf configure # use --prefix and --libdir if necessary 
        # --prefix=/usr --libdir=/usr/lib64 for Fedora 64-bit 
$ ./waf build 
$ ./waf install 

Use 
$ python3 ./waf ... 
if you have python2 and python3 installed, and the default is python 2. 

Вы можете использовать pip, чтобы принести его:

$ pip install --download=. pycairo 
Downloading/unpacking pycairo 
    Downloading pycairo-1.10.0.tar.bz2 (246kB): 246kB downloaded 
$ tar xf pycairo-1.10.0.tar.bz2 
$ cd pycairo-1.10.0 
$ python ./waf etc. 

Просто убедитесь, что вы используете Python с вашего virtualenv, и передать правильные варианты команда configure (--prefix=$VIRTUAL_ENV должна быть достаточной, но не цитируйте меня на этом, вам также может потребоваться установить переменную среды PYTHON в путь к вашему виртуальному Python или другим вещам).


Другой вариант заключается в использовании альтернативного набора каирских привязок, как cairocffi. Но это, очевидно, большое изменение, которое может оказаться неприемлемым.

+0

я на самом деле пытался, но я получаю 'File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Tools/python.py", строка 131, в check_python_headers если DCT [ x]: KeyError: 'MACOSX_DEPLOYMENT_TARGET'', и конфигурация waf не удалась. Я нахожусь на кубунту. – naught101

+0

Вам нужно будет опубликовать выходные данные и config.log где-нибудь (новый вопрос, pastebin.com, что бы вы ни находили нужным), если вы хотите, чтобы кто-то отлаживал его для вас (наряду с любыми аргументами, которые вы передали в ' configure'), потому что невозможно догадаться, что могло пойти не так, как раз из этой последней строки (за исключением того, что по какой-то причине waf неправильно вывел, что вы на Mac, конечно). – abarnert

+0

Справедливый вызов: http://stackoverflow.com/questions/19128874/keyerror-macosx-deployment-target-in-waf-on-kubuntu – naught101

Смежные вопросы