aws linux virtualenv安装扭曲

时间:2018-07-24 21:32:17

标签: python python-3.x amazon-ec2 virtualenv amazon-linux

我在aws linux上的扭曲库有一个奇怪的问题:

使用aws ec2实例,aws linux。 python 3.6.5(virtualenv)

由于某种原因twisted库未正确安装。 pip install twisted显示成功且没有错误。 pip install requirements.txt,其中需求包含twisted个输出,表明已成功安装了库以及其他需求。

但是之后的pip list不会显示twisted,代码也不起作用(扭曲的模块丢失)。

Successfully installed Automat-0.7.0 Django-2.0.6 PyHamcrest-1.9.0 PyJWT-1.6.4 aioredis-1.1.0 altgraph-0.15 apscheduler-3.5.1 asgiref-2.3.2 async-timeout-3.0.0 attrs-18.1.0 autobahn-18.6.1 channels-2.1.1 channels-redis-2.2.1 configparser-3.5.0 constantly-15.1.0 daphne-2.2.1 django-cors-headers-2.3.0 django-extensions-2.0.7 djangorestframework-3.8.2 djangorestframework-jwt-1.11.0 future-0.16.0 gunicorn-19.7.1 hiredis-0.2.0 hyperlink-18.0.0 idna-2.7 incremental-17.5.0 jsonpickle-0.9.6 macholib-1.9 msgpack-0.5.6 pefile-2017.11.5 psycopg2-2.7.5 pyinstaller-3.3.1 pytz-2018.5 six-1.11.0 twisted-18.7.0 txaio-2.10.0 tzlocal-1.5.1 websocket-client-0.48.0 zope.interface-4.5.0
(environment) [ec2-user@ip********** ~]$ pip list
Package                 Version   
----------------------- ----------
aioredis                1.1.0     
altgraph                0.15      
asgiref                 2.3.2     
async-timeout           3.0.0     
attrs                   18.1.0    
autobahn                18.6.1    
Automat                 0.7.0     
channels                2.1.1     
channels-redis          2.2.1     
configparser            3.5.0     
constantly              15.1.0    
daphne                  2.2.1     
Django                  2.0.6     
django-cors-headers     2.3.0     
django-extensions       2.0.7     
djangorestframework     3.8.2     
djangorestframework-jwt 1.11.0    
future                  0.16.0    
gunicorn                19.7.1    
hyperlink               18.0.0    
idna                    2.7       
incremental             17.5.0    
jsonpickle              0.9.6     
macholib                1.9       
meld3                   1.0.2     
pefile                  2017.11.5 
pip                     18.0      
PyHamcrest              1.9.0     
PyJWT                   1.6.4     
pytz                    2018.5    
setuptools              40.0.0    
six                     1.11.0    
supervisor              4.0.0.dev0
txaio                   2.10.0    
tzlocal                 1.5.1     
websocket-client        0.48.0    
wheel                   0.31.1    

请告知我如何调试它或可能是什么原因。

更新: 我能够通过安装easy_install来使它工作。但这仍然不是正确的解决方案,因为除了requrements.txt依赖项之外还必须完成它。

不能与pip install一起使用。 virtualenv中只有一个python。

更新: requirements.txt

Django==2.0.6
django-extensions==2.0.7
channels==2.1.1
channels-redis==2.2.1
djangorestframework==3.8.2
djangorestframework-jwt==1.11.0
django-cors-headers==2.3.0
gunicorn==19.7.1
jsonpickle==0.9.6
six==1.11.0
websocket-client==0.48.0
apscheduler==3.5.1
pyinstaller==3.3.1
configparser==3.5.0
psycopg2==2.7.5
msgpack==0.5.6
twisted==18.7.0

1 个答案:

答案 0 :(得分:0)

问题在于Amazon Linux,如下所述: https://github.com/pypa/pip/issues/4464

pip/lib64中安装了一些库,而大多数库则在/lib中安装了。

解决方案:

  • 使用pip --target强制安装到lib
  • 运行unset PYTHON_INSTALL_LAYOUT
  • 使用Amazon Linux 2