Ted*_*ell 5 python installation pip opensuse python-3.7
在 openSUSE Leap 42.3 上从源代码构建和安装 Python 3.7.0 时,安装到 /usr/local 的默认 ./configure 会出现严重的 Python 错误。
(openSUSE Leap 42.3 Python3 包目前只有 Python 3.4.6,virtualenv 还没有发布 3.7 版本。)
$ python3
Python 3.7.0 (default, Jul 5 2018, 15:55:09)
[GCC 4.8.5] on linux
Type "help", "copyright", "credits" or "license" for more information.
Traceback (most recent call last):
File "/etc/pythonstart", line 7, in <module>
import readline
ModuleNotFoundError: No module named 'readline'
>>>
Run Code Online (Sandbox Code Playgroud)
pip 也坏了:
$ pip3
Traceback (most recent call last):
File "/usr/local/bin/pip3", line 7, in <module>
from pip._internal import main
File "/usr/local/lib/python3.7/site-packages/pip/_internal/__init__.py", line 20, in <module>
from pip._vendor.urllib3.exceptions import DependencyWarning
File "/usr/local/lib/python3.7/site-packages/pip/_vendor/urllib3/__init__.py", line 8, in <module>
from .connectionpool import (
File "/usr/local/lib/python3.7/site-packages/pip/_vendor/urllib3/connectionpool.py", line 7, in <module>
from socket import error as SocketError, timeout as SocketTimeout
File "/usr/local/lib/python3.7/socket.py", line 49, in <module>
import _socket
ModuleNotFoundError: No module named '_socket'
Run Code Online (Sandbox Code Playgroud)
编辑:一种可能的解决方案:
$ sudo ln -s /usr/local/lib64/python3.7/lib-dynload/ /usr/local/lib/python3.7/lib-dynload
Run Code Online (Sandbox Code Playgroud)
(其中 /usr/local/ 是默认的 PYTHONHOME)
那么问题是从https://www.python.org/安装 Python 3.7.0 是否有任何通用修复?每个人都一定有同样的问题,至少对于 openSUSE Leap 42.3。
该实验的openSUSE蟒蛇3.7.0(devel的:语言:Python的:厂)打破了AppArmor的和python(ABI)的依赖,所以这个不能安装。
这应该可以解决您的问题:
ln -s /usr/local/lib64/python3.7/lib-dynload/ /usr/local/lib/python3.7/lib-dynload
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5306 次 |
最近记录: |