赞
踩
网址: https://www.python.org/ftp/python/3.3.0/Python-3.7.4.tgz
解压文件
tar -xzvf Python-3.7.4.tgz
创建存放目录
mkdir /usr/local/python3
在解压的tar目录下执行
./configure
configure功能:检查编译环境/相关库文件/配置参数,生成makefile
configure是一个shell脚本,根据平台的特性生成Makefile文件,为下一步的编译做准备。
可以通过在 configure 后加上参数来对安装进行控制,比如下面就是指定安装目录/usr/local/python3。
如果没有用这个选项,安装过程结束后,该软件所需的软件被复制到不同的系统目录下,比较混乱。
Traceback (most recent call last):
File "./ImageScan.py", line 3, in <module>
import datetime
File "/usr/local/lib/python3.7/datetime.py", line 8, in <module>
import math as _math
ImportError: /usr/local/lib/python3.7/lib-dynload/math.cpython-37m-x86_64-linux-gnu.so: undefined symbol: PyFloat_Type
如果出现上述错误,请添加参数
./configure --enable-shared
参考:
https://blog.51cto.com/3427850/1077262?source=drt
make && make install
根据makefile制定的规则,将c\c++文件编译成*.o文件,然后进一步生成可执行文件。
make 对源代码进行编译,生成可执行文件
make install 将生成的可执行文件安装到当前计算机中
make clean
删除一些临时文件(删除源代码(C\C++ code)生成的执行文件和所有的中间目标文件)
查看
python3.7 -V
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python
如果可以直接install
安装外部函数库(gcc)
yum install gcc -y
解决:(离线安装方法)本地没有gcc,CentOS 7系统离线安装gcc
查看gcc需要的安装包
下载一个CentOS-7-x86_64-DVD-1804-7.5.iso 安装包,然后解压
下载地址看我另外一个博客,应有竟有:
https://blog.csdn.net/lqy971966/article/details/104963908
汇总后的:
这里除了libffi-* 和 zlib-*之外的都是gcc需要的包
然后进行安装即可
rpm -Uvh *.rpm --nodeps --force
--nodeps 不验证套件档的相互关联性。
--force 强行置换套件或文件。
验证
gcc -v
https://www.cnblogs.com/qqflying/p/10916564.html
https://blog.csdn.net/White_Black007/article/details/81357234
gcc 为GNU Compiler Collection的缩写,可以编译C和C++源代码等,它是GNU开发的C和C++以及其他很多种语言的编译器
(最早的时候只能编译C,后来很快进化成一个编译多种语言的集合,如Fortran、Pascal、Objective-C、Java、Ada、 Go等。)
gcc 在编译C++源代码的阶段,只能编译C++源文件,而不能自动和C++程序使用的库链接
(编译过程分为编译、链接两个阶段,源程序文件被编译成目标文件,多个目标文件连同库被链接成一个最终的可执行文件,可执行文件被加载到内存中运行)。
因此,通常使用g++命令来完成C++程序的编译和连接,该程序会自动调用 gcc 实现编译。
g++ 也能编译C源代码,只不过把会把它当成C++源代码。
后缀为.c的源文件,gcc把它当作是C程序,
而g++把它当作是c++程序;后缀为.cpp的,两者都会认为是c++程序。注意,虽然c++是c的超集,但是两者对语法的要求是有区别的。
https://blog.csdn.net/zyz511919766/article/details/14002497/
如果可以直接install
安装外部函数库(libffi)
yum install libffi-devel -y
解决:(离线安装方法)安装libffi-devel
找到libffi-*包
1、执行如下命令:
(在线安装:yum install libffi-devel )
2、从"./configure …"重新安装
https://blog.csdn.net/qq_42353939/article/details/94609591
如果可以直接install
从错误信息分析,就是缺少了zlib的解压缩类库,安装即可
yum -y install zlib*
安装完成之后,重新安装即可,所有的问题都已经正常解决了
解决:(离线安装方法)缺少了zlib的解压缩类库,安装即可
(在线安装:yum -y install zlib*)
2、从"./configure …"重新安装
https://blog.csdn.net/blueheart20/article/details/72827666
将libpython3.7m.so.1.0 拷贝至/usr/lib64/目录下即可
[root@glusterfs Python-3.7.4]# find / -name libpython3.7m.so.1.0
/usr/local/lib/libpython3.7m.so.1.0
^C
[root@glusterfs Python-3.7.4]# cp /usr/local/lib/libpython3.7m.so.1.0 /usr/lib
lib/ lib64/ libexec/
[root@glusterfs Python-3.7.4]# cp /usr/local/lib/libpython3.7m.so.1.0 /usr/lib64/
[root@glusterfs Python-3.7.4]# python3 -V
Python 3.7.4
[root@glusterfs Python-3.7.4]#
#查看当前版本 [root@guangzhou src]# python -V Python 2.7.5 [root@guangzhou src]# wget https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz [root@guangzhou src]# tar -zxvf Python-3.7.5.tgz [root@guangzhou Python-3.7.5]# mkdir /usr/local/python3.7.5 [root@guangzhou Python-3.7.5]# ./configure [root@guangzhou Python-3.7.5]# make && make install /* 这里如果中间出错就解决 */ [root@guangzhou bin]# /usr/local/python3.7.5/bin/python3.7 -V Python 3.7.5 #为不影响已经使用python2.7.5版本安装的软件继续使用,python3.7使用软链 [root@guangzhou bin]# ln -s /usr/local/python3.7.5/bin/python3.7 /usr/bin/python3 [root@guangzhou bin]# ln -s /usr/local/python3.7.5/bin/pip3 /usr/bin/pip3 #再次打印3.7版本 [root@guangzhou python3.7.5]# python3 -V Python 3.7.5
参考:
https://www.cnblogs.com/wscsq789/p/12269274.html
Python2.7升级到Python3.7及其报错处理 在线安装
https://www.cnblogs.com/biaopei/p/12133562.html
https://blog.csdn.net/Aaronxiaobo/article/details/96121771
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。