python3.5安装

版权声明:本文为博主大壮原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33792843/article/details/82791821

开始python3.5的安装

请注意linux自带python的版本。

1.安装依赖

yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel -y

2.下载源码

官方地址:https://www.python.org/ftp/

使用命令

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

3.解压tgz包

tar -zxvf Python-3.5.3.tgz

4.把python移到/usr/local下面

mv Python-3.5.3 /usr/local/src

5.删除旧版本的python依赖

ll /usr/bin | grep python
rm -rf /usr/bin/python

6.进入python目录、配置

cd /usr/local/src/Python-3.5.3/
./configure

应当改为:./configure --enable-shared

7.编译 make

make

8.编译,安装

make install

9.删除旧的软链接,创建新的软链接到最新的python

rm -rf /usr/bin/python

ln -s /usr/local/bin/python3.5 /usr/bin/python

python -V

注意整个时间大约30分钟

刚才和postgre合并安装发现了坑,原来编译的时候需要添加参数。

报错:

configure: error: cannot build PL/Python because libpython is not a shared library

You might have to rebuild your Python installation.  Refer to the

documentation for details.  Use --without-python to disable building

PL/Python.

原因是因为之前的python没有设置好这两个参数。

请注意:在编译安装Python时,务必加上--enable-shared编译参数,在有些系统下,操作系统不会创建分享库,centos系统便是如此的,会报找不到模块的错误。

知识拓展:

这是 configure 常用的一个参数,表示启用动态库版本。 如果你要编译一个库的源代码,可以把它编译成静态库,也可以把它编译成动态库。如果你想编译成静态库,就用 --enable-shared参数;如果你想编译成静态库,就用--enable-static参数。

python需要重新安装

在configure时需要重新安装的。

10.卸载python

rpm -qa|grep python|xargs rpm -e --allmatches --nodeps
whereis python|xargs rm -fr

所以第6步应当为

./configure --enable-shared

从6再来一遍。发现最后的时候

python -V

python3.5安装报错

python3.5: error while loading shared libraries: libpython3.5m.so.1.0: cannot open shared object file: No such file or directory

原因是因为python运行时没有加载到libpython3.5m.so.1.0 这个库文件     将其复制到响应目录OK

解决方法:

cd /usr/local/src/Python-3.5.3     进入解压后的编译目录

 cp libpython3.5m.so.1.0 /usr/local/lib64/

 cp libpython3.5m.so.1.0 /usr/lib/ 
cp libpython3.5m.so.1.0 /usr/lib64/

然后python -V就可以了

如果遇到报错:

configure: error: in `/usr/local/src/pythonSoft/Python-3.3.4':
configure: error: no acceptable C compiler found in $PATH

如果报错:

python3: error while loading shared libraries: libpython3.5m.so.1.0: cannot open shared object file:

拓展知识:

./configure --prefix 作用

--pregix=/usr/local/lsz

猜你喜欢

转载自blog.csdn.net/qq_33792843/article/details/82791821