前一段时间在centos上鼓捣python,发现各种小问题,_bz2、curses缺失,方向键乱码,归根到底是因为当初python安装没有安装python的一些基础包。
本文环境centos6.9,采用yum命令安装。
基础环境的安装:
yum -y install wget gcc c++make zlib-devel readline-devel bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel openssl-devel
wget:下载包;
gcc、c++、make:用来编译的,装python包,可能要用到gcc和c++;
zlib-devel: 压缩和解压方面的,
bzip2-devel :解决没有_bz2模块的问题,也是压缩方面的,因为python没有自带。
ncurses-devel :处理图片要用到
机器学习处理数据还是要用到蛮多包的
tensorflow所需的环境
升级GLIBC到2.17
$ wget http://ftp.gnu.org/gnu/libc/glibc-2.17.tar.gz
$ tar -zxvf glibc-2.17.tar.gz
$ cd glibc-2.17
$ mkdir build
$ cd build
$ ../configure --prefix=/usr --with-headers=/usr/include --with-binutils=/usr/bin
$ make && make install
升级GCC到4.8.3
$ wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.3/gcc-4.8.3.tar.gz
$ tar -zxvf gcc-4.8.3.tar.gz
$ cd gcc-4.8.3
$ ./contrib/download_prerequisites
$ mkdir build
$ cd build
$ yum -y install gcc-c++
$ ../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
$ make && make install
$ cp ./stage1-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.19 /usr/lib64
$ cd /usr/lib64
$ rm -f /usr/lib64/libstdc++.so.6
$ ln -s libstdc++.so.6.0.19 libstdc++.so.6
下载rpm包:
yum -y install https://centos6.iuscommunity.org/ius-release.rpm
安装
yum makecache
yum install python36u
yum -y install python36u-pip
yum -y install python36u-devel
安装完成后需要修改的地方
vi /usr/bin/yum
将#!/usr/bin/python 改成 #!/usr/bin/python2.6
为什么要这么做 现在启动python3.6,需要按python3.6
我们要将/usr/bin下的python 替换为python3.6但是yum是要依赖python2.6的,我们覆盖python后要改yum配置文件。
pip3同理(记得备份旧文件)