相关疑难解决方法(0)

在非标准位置使用SSL支持构建Python

我需要在RHEL上安装几个Python模块,我没有root访问权限.至少有一个模块也需要访问Python.h.

在这种情况下,我发现最好的方法是安装python及其依赖项~/local.它通常只是工作,但这次Python无法构建SSL模块(请参阅下面的详细信息).这是我正在做的事情的痕迹.

所以我下载了python 6源码然后关闭了我:

./configure --prefix=/home/fds/rms/local
make >& make.log
Run Code Online (Sandbox Code Playgroud)

对日志的检查显示ssl模块尚未编译,但没有提及原因(make或configure中没有其他ssl出现):

Failed to find the necessary bits to build these modules:
_bsddb             _curses            _curses_panel
_hashlib           _sqlite3           _ssl   <----------
Run Code Online (Sandbox Code Playgroud)

所以我想,python根本找不到任何ssl库(这很奇怪,但是嘿......).所以我下载openssl-0.9.8r和

./config --prefix=/home/fds/rms/local shared
make
make install
Run Code Online (Sandbox Code Playgroud)

现在回到Python,我./configure并重新制作.它失败了,但这一次有所不同:

Failed to build these modules:
_hashlib           _ssl
Run Code Online (Sandbox Code Playgroud)

仔细检查日志文件可以发现:

gcc -pthread -shared build/temp.linux-x86_64-2.6/home/fds/rms/installers/Python-2.6.6/Modules/_ssl.o -L/home/fds/rms/local/lib -L/usr/local/lib -lssl -lcrypto -o build/lib.linux-x86_64-2.6/_ssl.so
*** WARNING: renaming "_ssl" since importing it failed: libssl.so.0.9.8: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

所以现在它正在拿起图书馆,但不是很正确(文件应该在哪里):

$ find /home/fds/rms/local …
Run Code Online (Sandbox Code Playgroud)

python openssl compilation

56
推荐指数
4
解决办法
7万
查看次数

由于ssl模块不可用,pip3安装在虚拟环境中,python3.6失败

(py36venv)vagrant @ pvagrant-dev-vm:/ vagrant/venvs $ pip3 install pep8

pip配置了需要TLS/SSL的位置,但Python中的ssl模块不可用.

收集pep8无法获取URL https://pypi.python.org/simple/pep8/:确认ssl证书时出现问题:无法连接到HTTPS URL,因为SSL模块不可用. - 跳过

找不到满足要求pep8的版本(来自版本:)没有为pep8找到匹配的发行版

背景信息 - 试图转向python 3.6.

使用以下命令安装python3.6:

wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz

tar -xvf Python-3.6.0.tgz

cd Python-3.6.0
./configure --enable-optimizations
make -j8 sudo make altinstall python3.6

通过以下方式创建virtualenv:

python3.6 -m venv py36venv

源py36venv/bin/activate

试图安装pep8

(py36venv)pip3安装pep8

pip配置了需要TLS/SSL的位置,但Python中的ssl模块不可用.收集pep8

无法获取URL https://pypi.python.org/simple/pep8/:确认ssl证书时出现问题:无法连接到HTTPS URL,因为

SSL模块不可用. - 跳过找不到满足要求的版本pep8(来自版本:)没有为pep8找到匹配的发行版

pip python-venv python-3.6

37
推荐指数
5
解决办法
7万
查看次数

谷歌云计算引擎更改为python 3.6

我正在运行python脚本,可以在笔记本电脑上训练CNN,现在想在Google云上运行它。该脚本导入tensorflow和keras,我需要使用Python 3.6

我遵循的步骤是:

  1. 转到计算引擎并使用8cpus创建虚拟机
  2. 我进入了虚拟机,然后看到python版本是2.7

如何将python版本更改为3.6,以便可以安装keras,然后能够运行python脚本?

非常感谢您的帮助

google-compute-engine google-cloud-platform

8
推荐指数
1
解决办法
3124
查看次数