Admin
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum -y install libffi-devel # python 3.7
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
mkdir /usr/local/python3
tar -xvJf Python-3.6.2.tar.xz
cd Python-3.6.2
./configure --prefix=/usr/local/python3 --enable-shared
make && make install
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
补充说明:编译时加上“—enable-shared”参数是为了能够在提供后续PyInstaller打包所需依赖。
但是,这样也会导致安装完成后Python3命令无法运行
“python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory”
查看原因:
执行:
ldd /usr/local/python3/bin/python3
得到结果:
linux-vdso.so.1 => (0x00007ffdcf1f8000)
libpython3.6m.so.1.0 => not found
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f0160eb3000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f0160caf000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007f0160aac000)
libm.so.6 => /lib64/libm.so.6 (0x00007f01607a9000)
libc.so.6 => /lib64/libc.so.6 (0x00007f01603e8000)
lib64/ld-linux-x86-64.so.2 (0x00007f01610d9000)
解决办法:
执行
find / -name 'libpython3.6m.so.1.0'
得到:
/root/tmp/Python-3.6.2/libpython3.6m.so.1.0
/usr/local/python3/lib/libpython3.6m.so.1.0
添加配置文件:
vim /etc/ld.so.conf.d/python3.conf
写入内容:
/usr/local/python3/lib/
生效:
ldconfig
检查是否报错:
python3 --version
将python3安装路径添加到环境变量PATH中,避免不必要的麻烦
vim /etc/profile
在末尾添加行:
export PATH="/usr/local/python3/bin:$PATH"
https://www.cnblogs.com/FZfangzheng/p/7588944.html
http://www.yecuizhen.com/archives/20/