首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用--前缀时,python-daemon安装失败

使用--前缀时,python-daemon安装失败
EN

Stack Overflow用户
提问于 2017-04-01 20:51:46
回答 2查看 771关注 0票数 3

如果我执行:

代码语言:javascript
复制
pip install --install-option="--prefix=/root/folder" airflow==1.8.0

它将会这样结束

代码语言:javascript
复制
    'dist_version': self.distribution.get_version(),
  File "version.py", line 656, in get_version
    version_info = self.get_version_info()
  File "version.py", line 651, in get_version_info
    changelog_path = get_changelog_path(self)
  File "version.py", line 552, in get_changelog_path
    setup_dirname = os.path.dirname(distribution.script_name)
  File "/usr/lib64/python2.7/posixpath.py", line 129, in dirname
    i = p.rfind('/') + 1
AttributeError: 'NoneType' object has no attribute 'rfind'

如果我执行

代码语言:javascript
复制
 pip install airflow==1.8.0

它将无错误地完成该过程。

代码语言:javascript
复制
# pip freeze 
airflow==1.8.0
alembic==0.8.10
backports.ssl-match-hostname==3.4.0.2
chardet==2.2.1
click==6.7
croniter==0.3.16
dill==0.2.6
docutils==0.13.1
Flask==0.11.1
Flask-Admin==1.4.1
Flask-Cache==0.13.1
Flask-Login==0.2.11
flask-swagger==0.2.13
Flask-WTF==0.12
funcsigs==1.0.0
future==0.15.2
gitdb2==2.0.0
GitPython==2.1.3
gunicorn==19.3.0
iniparse==0.4
itsdangerous==0.24
Jinja2==2.8.1
kitchen==1.1.1
lockfile==0.12.2
lxml==3.7.3
Mako==1.0.6
Markdown==2.6.8
MarkupSafe==1.0
numpy==1.12.1
ordereddict==1.1
pandas==0.19.2
psutil==4.4.2
pycurl==7.19.0
Pygments==2.2.0
pygobject==3.14.0
pygpgme==0.3
pyliblzma==0.5.3
python-daemon==2.1.2
python-dateutil==2.6.0
python-editor==1.0.3
python-nvd3==0.14.2
python-slugify==1.1.4
pytz==2017.2
pyxattr==0.5.1
PyYAML==3.12
requests==2.13.0
setproctitle==1.1.10
six==1.10.0
smmap2==2.0.1
SQLAlchemy==1.1.8
tabulate==0.7.7
thrift==0.9.3
Unidecode==0.4.20
urlgrabber==3.10
Werkzeug==0.12.1
WTForms==2.1
yum-metadata-parser==1.1.4
zope.deprecation==4.2.0

由于这必须在jenkins构建过程中运行,所以我不能省略install选项。python的高级用户可以帮助我理解在哪里看到它以及如何修复它吗?

我读到你需要在安装之前安装这个库(python-daemon),但是仍然不能使用安装选项:

代码语言:javascript
复制
pip install --install-option="--prefix=/root/folder" python-daemon 

/usr/lib/python2.7/site-packages/pip/commands/install.py:188: UserWarning: Disabling all use of wheels due to the use of --build-options / --global-options / --install-options.
      File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 230, in finalize_options
        'dist_version': self.distribution.get_version(),
      File "version.py", line 656, in get_version
        version_info = self.get_version_info()
      File "version.py", line 651, in get_version_info
        changelog_path = get_changelog_path(self)
      File "version.py", line 552, in get_changelog_path
        setup_dirname = os.path.dirname(distribution.script_name)
      File "/usr/lib64/python2.7/posixpath.py", line 129, in dirname
        i = p.rfind('/') + 1
    AttributeError: 'NoneType' object has no attribute 'rfind'

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2017-06-14 16:19:34

python-daemon需要docutils。

代码语言:javascript
复制
pip install docutils

在那次跑步之后

代码语言:javascript
复制
pip install python-daemon
票数 5
EN

Stack Overflow用户

发布于 2017-04-02 22:23:17

我找到了一种让它工作的方法,不是最好的也不是最终的解决方案,但它是有效的:

代码语言:javascript
复制
 pip install python-daemon 

当它完成时,您应该能够看到它出现在

代码语言:javascript
复制
[root@localhost ozw1z5rd]# pip freeze | grep daemon 
python-daemon==2.1.2 

现在卸载它

代码语言:javascript
复制
 pip uninstall python-daemon 

当然,它将不再可用于

代码语言:javascript
复制
[root@localhost ozw1z5rd]# pip freeze | grep daemon 

现在使用前缀重新安装

代码语言:javascript
复制
 pip install --install-option="--prefix=/root/folder" python-daemon 

当然,此安装不会出现在pip freeze列表中,但它完成时没有错误,并且在新路径中确实存在该库。

代码语言:javascript
复制
[root@localhost ozw1z5rd]# ls /root/folder/lib/python2.7/site-packages/
daemon/                             python_daemon-2.1.2-py2.7.egg-info/ 

所有这些都允许我使用Jenkins安装airflow。

我还研究了python-daemon的setup.py脚本,attrs' script _name‘在代码的早期部分是正确加载的,但后来就丢失了。

在这个屏幕中,显示的代码是属性“‘script_name”丢失的地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43157104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档