【www.5929.com】Linux下多少个Python版本安装教程,多陈设文件布署MySQL多实例方案

1.下载

  地址

  注: 系统为ubuntu 下载的源码包 tar.gz

  或者

1 wget https://nodejs.org/dist/v9.5.0/node-v9.5.0-linux-x64.tar.xz

  留神:那几个包下载下来正是源码,解压之后就存在node和npm。无需再度编写翻译。

目录

因为环境或上学的急需,大家也许须求在服务器上安装四个python版本,安装一个创新的python版本后,使用软链来开始展览现有。

Cmake编写翻译安装MySQL&多配备文件陈设MySQL多实例方案

上一节一度不难介绍过MySQL多实例、应用场景、优缺点以及两种实施方案,本文首要介绍第2种即多配备文件陈设多实例MySQL,单一配置文件计划方案会在下一节开始展览实战。

2.解压,编译,安装

  

1 tar xvf node-v9.5.0-linux-x64.tar.xz

  

  • Linux安装多少个Python版本
    • 下载Python源码
    • 【www.5929.com】Linux下多少个Python版本安装教程,多陈设文件布署MySQL多实例方案。编写翻译安装
      • 补充
      • openSUSE编译python3找不到ssl模块
    • 修改Python软链
      • 补充
    • 虚拟环境设置区别版本的python
      • 下载zlib模块并展开编写翻译安装
      • python导入zlib
      • 再也编写翻译python并点名zlib
      • 下载virtualenv源码包
    • virtualenv创设虚拟环境
    • 测试虚拟环境下安装包

那一个时候需求展开源码编写翻译安装。

说明:

  • 正文参考老男孩MySQL教程,为自家实战操作记录
  • 以创建2个为例

  创造软链接

  创造软链接的目标就是让 nodenpm 全局有效

1 ln -s /download/node-v9.5.0-linux-x64/bin/node /usr/local/bin/
2 ln -s /download/node-v9.5.0-linux-x64/bin/npm /usr/local/bin/

  专注:路径要明确是友好设置的公文路径

Linux安装八个Python版本

因为环境或学习的内需,大家兴许要求在服务器上安装七个python版本,安装2个翻新的python版本后,使用软链来进突显有。

其暂时候须要开展源码编写翻译安装。

当然后续开发项目方可一向跑在虚拟环境下隔开分离开来,就不再须求在服务器上安装八个不一样版本的包了。

自然后续开发品种得以直接跑在虚拟环境下隔开开来,就不再供给在服务器上安装三个例外版本的包了。

MySQL二进制包和源码包的分别

  • 二进制格式的包名字非常短,都含有版本号、适应平台、适应的硬件类型等
  • mysql-5.0.45.tar.gz 是源码包 (编写翻译安装)
  • 源码格式仅仅正是3个版本号的tar包
  • mysql-5.0.45-linux-x86_64-glibc23.tar.gz 是二进制包

3.测试

  

1 node -v
2 node -v

 

  

下载Python源码

从依照供给的本子下载源文件。

www.5929.com 1
譬如说上海体育地方正是自己在官网直接找到3.5.6本子的下载页面,点击的tar源码包举办下载。

下载Python源码

持有的操作依据实情而定

  • Camek下载:
  • MySQL下载:

编写翻译安装

从听闻供给的本子下载源文件。

1.1预备安装环境

补充

在意编写翻译安装python前最好先保险系统己安装上以下库

yum install zlib
yum install zlib-devel
yum install openssl
yum install openssl-devel
yum install readline-devel
yum install gcc patch libffi-devel python-devel bzip2-devel ncurses-devel sqlite-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

【www.5929.com】Linux下多少个Python版本安装教程,多陈设文件布署MySQL多实例方案。解压源码包
tar zxvf Python-3.5.6.tgz
cd Python-3.5.6

www.5929.com 2

1.率先检查是还是不是曾经安装过mysql:

> rpm -qa | grep mysql

openSUSE编译python3找不到ssl模块

这会促成你在配置虚拟环境后选用pip去下载包的时候报https连接的谬误!
就此自身在遭遇这一个场地并千辛万苦解决后将此步骤放到那里当做重点补充,以防你像本身那样频仍重新编写翻译(极其耗费时间!)

下图是自家遇上的在虚拟环境python3.5.6版本下,使用pip安装django时报的错,便是因为编写翻译安装时没有点名ssl。
www.5929.com 3

化解办法

是因为作者利用的是openSUSE的系统,所以笔者使用yzpper in openssl openssl-devel设置好ssl了,但仍亟需再行编写翻译安装才能科学导入ssl模块。

在那里最好直接编辑python3.5.6的源安装配备文件,毕竟openSUSE的ssl私下认可并不是装在/usr/local/ssl

  • 运用vim实行编辑:
    vim ~/Python3.5.6/Modules/Setup.dist
  • 未编写制定在此之前是长这么的,有关ssl的配置集中在207-210四行中。

www.5929.com 4

但自个儿用的是openSUSE系统,所以只要求编写制定208-210三行,也正是#SSL=/usr/local/ssl不要去破除注释,避防弄巧成拙,当然作者觉得要设置成小编系统的/etc/ssl恐怕也是足以的。

  • 编辑,也便是去掉相关行注释之后如下图:

www.5929.com 5

尔后再展开下一步的编写翻译三步。

安排选项
sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6
--enable-optimizations 为优化质量的选项,提议选择上这几个参数。
--prefix为指定安装的路线

注:python3.5.6自小编屡屡尝试过了,它己经不认--with-sslwith-zlib等选取了,笔者觉得这大概是一种进步,因为自身假使漏装了zlib和readline的话,系统重新安装上正是了,不用再另行编写翻译python3也能科学导入了。但注意的是ssl视系统情形分化而各异,openSUSE下ssl的话依旧得重复编写翻译且是在setup.dist中配备。

配备选项
sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib --with-readline
--enable-optimizations 为最优安装,建议选取那几个参数。
--prefix为指虞升卿装的路径

进展编写翻译安装

sudo make
sudo make install

例如上海体育场合正是自小编在官网直接找到3.5.6本子的下载页面,点击的tar源码包进行下载。

2.有的话就卸载掉从前设置的mysql:

> rpm -e --nodeps xxx(xxx是搜索结果)

修改Python软链

暗许python命令是在/usr/bin/目录下,须求在这边把软链修改成3.5.6的本子,顺便建立三个3.5.6的软链。

www.5929.com 6
上海体育场所是原暗中同意软链接,是python2.7的,其实它也己经默许建立了叁个python2的软链接了。

重新命名暗中同意python软链接为python2.7以便3.5的版本成为暗中同意环境变量
sudo mv /usr/bin/python /usr/bin/python2.7
树立python3.5本子的软链接
sudo ln -s /usr/local/python-3.5.6/bin/python3.5 /usr/bin/python

本来,也足以不做上一步,而是将3.5版本的软链接成python3之类也是有效的。
www.5929.com 7
比如自身做的正是增创python3的软链接指向python3.5所在的目录。
附带也将配备文件也做了一个软链接指向:
sudo ln -s /usr/local/python-3.5.6/bin/python3.5-config /usr/bin/python3-config

编写翻译安装

3.并剔除全体的相干文件:

> rm -f /etc/my.cnf

补充

注意
如无尤其供给,推荐命名成分化python的软链接,因为您会发觉要是你平素改了原先指向旧版本的软链接的话,pip,virtualenv等依赖原版本python的工具须求改它的py文件头的环境变量。

www.5929.com 8

假若您改改了原软链接,使得python实际指向的是新本子的python的话,pip等仍仰仗旧版本的工具要么重装要么修改它py文件的首行,按其实际意况况再一次指向您的旧版本原版本的python环境,例如此处作者就可直接改成/usr/bin/python2

补充

1.2下载cmake安装包编写翻译安装cmake

虚拟环境设置分化版本的python

创设好项目目录,cd进到目录下。

在开立python虚拟环境时,能够钦定虚拟环境要动用的python版本,例如下命令(使用-p参数指明python解释器的路径):

  -p PYTHON_EXE, --python=PYTHON_EXE
                        The Python interpreter to use, e.g.,
                        --python=python3.5 will use the python3.5 interpreter
                        to create the new environment.  The default is the
                        interpreter that virtualenv was installed with
                        (/usr/bin/python)

例:

virtualenv -p /usr/bin/python2 ENV2.7  #创建python2.7的虚拟环境
virtualenv -p /usr/bin/python3 ENV3.5  #创建python3.5的虚拟环境
virtualenv --python=python3 my-env     #创建python3.5的虚拟环境

从而装八个版本的python,有1个原因很要紧,也正是想要使用virtualenv创设隔开的虚拟环境的时候钦命分裂python版本。不过前边笔者进行编写翻译安装的时候从不点名编写翻译安装上zlib库,就相会世以下如图难题:

www.5929.com 9
报找不到zlib模块错误。

因此最好如故系统原环境变量安装成高版本的python,或开始展览python编写翻译安装的时候记得加上--with-zlib
最好--with-zlib-develreadline也带上。

本来,补救方法也是有个别,正是重复开始展览编写翻译安装。
(重新开始展览本文最初阶的操作,当然本文最初叶笔者己经补充修正过了编译安装时的布置。)

小编由于重新编写翻译后依然报zlib模块错误,笔者并不想弄污原来python2.7的环境,所以决定尝试virtualenv下载源码来选取,而zlib也实行编写翻译安装来让python3也能平常导入zlib模块。

只顾编写翻译安装python前最好先保障系统己安装上以下库

1.下载解压Cmake

> wget  https://cmake.org/files/v3.9/cmake-3.9.1.tar.gz
> tar zxf  cmake-3.9.1.tar.gz

下载zlib模块并进行编写翻译安装

官网下载最新版本的zlib源码文件,小编下载的是zlib-1.2.11.tar.gz

安装zlib:
tar xzvf zlib-1.2.11.tar.gz
cd zlib-1.2.11

提议暗中同意路径安装,编写翻译三部曲:

./configure
make
make install
yum install zlib
yum install zlib-devel
yum install openssl
yum install openssl-devel
yum install readline-devel

2.编写翻译安装cmake

> cd cmake-3.9.1
> ./configure
> gmake
> echo $?      #编译但是未安装之前判断是否编译有错
> gmake install

python导入zlib

一般来说图,编写翻译安装到位zlib后,进python3测试己经恐怕平常导入zlib包。
www.5929.com 10

zlib安装完后,libz.a/usr/local/lib/,opensusezlib.h暗中认可放在/usr/local/include/中。
其它linux的zlib.h文本一般在/usr/include中。

解压源码包

1.3下载MySQL编写翻译安装MySQL

再也编写翻译python并点名zlib

若是还发出少数导入不成事,或你想一贯软链接升级python旧版本的,或许须要重新编写翻译python。

进入Python源码文件目录,重新编写翻译Python

sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib=/usr/include
或者:
./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib-dir=/usr/local/lib

都能够成功python对zlib库的支撑,在python源码中央直机关接import
zlib即可使用zlib了。

tar zxvf Python-3.5.6.tgz
cd Python-3.5.6

1.安装重视包

> yum -y install libaio libaio-devel     
> yum -y install ncurses-devel         

下载virtualenv源码包

直接到pypi下载16.0.0版本。
tar命令进行解压
tar xvfz virtualenv-16.0.0.tar.gz
cd virtualenv-16.0.0
此目录下文件如下,大家重点采用的并不是setup安装,而是平素使用它的virtualenv.py文件。

www.5929.com 11

布局选项

2.制造用户组 用户

> groupadd mysql
> useradd mysql -s /sbin/nologin -M -g mysql

virtualenv创设虚拟环境

在类型目录下直接钦命python版本及virtualenv.py的相对路径举办创办虚拟环境:
sudo python3 /home/operation/virtualenv-16.0.0/virtualenv.py py3

www.5929.com 12

可以不进行全局安装,而是用户下展开虚拟化环境能够直接使用python3
后接virtualenv.py运作,完美消除要求。

也得以利用原python2下的大局virtualenv来实施,一样能够成立,如:

operation@opensuse-wordpress:/work> sudo virtualenv --python=python3 my_py3_env
[sudo] password for root: 
Running virtualenv with interpreter /usr/bin/python3
Using base prefix '/usr/local/python-3.5.6'
New python executable in /work/my_py3_env/bin/python3
Also creating executable in /work/my_py3_env/bin/python
Please make sure you remove any previous custom paths from your /root/.pydistutils.cfg file.
Installing setuptools, pip, wheel...done.

虚构隔开环境目录如下:
www.5929.com 13

具体virtualenv的施用命令等见相关小说,在此就不再详述。

sudo ./configure –enable-optimizations –prefix=/usr/local/python-3.5.6
–with-zlib –with-readline
–enable-optimizations 为最优安装,提出选拔那些参数。
–prefix为钦命安装的不二法门

3.下载解压

> wget https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.57.tar.gz
> tar -zxf mysql-5.5.57.tar.gz

测试虚拟环境下安装包

测试进入虚拟环境中设置django,因为自个儿就试过openSUSE系统openssl和openssl-devel忘装而造成虚拟环境下python3.5.6版本选取pip安装时报https连接错误的坑。(此坑和平解决决办法己补充到前文)

cd /work/py3
source py3/bin/activate

注意:source那个命令不要带sudo使用才有效,否则会被报找不到source命令。

www.5929.com 14

运行pip install django==1.11等等安装包的吩咐,下图可知到能符合规律实行安装。

www.5929.com 15

测试完了,如此,在liunx下己经能够实现多版本的python完美国共产党存。

那般,在liunx下己经能够完成多版本的python完美国共产党存。

2018-8-15 铁乐与猫
end

开始展览编写翻译安装

4.cmake编写翻译安装(编写翻译时无法内定陈设文件端口号mysql.sock地址等)

> cd mysql-5.5.57
> cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5.57 -DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysql.sock -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc/my.cnf  -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all
> make && make install
sudo make
sudo make install

5.检查是否安装成功

> echo $?
> 0
#(输出0表示成功)

修改Python软链

6.装置软链接及配置文件

> ln -s /usr/local/mysql55 /usr/local/mysql 

暗中认可python命令是在/usr/bin/目录下,要求在此间把软链修改成3.5.6的本子,顺便建立二个3.5.6的软链。

1.4布署多实例的MySQL数据库

www.5929.com 16

1.创办多实例目录

> mkdir -pv /data/{3306,3307}/data
> tree data

上海教室是原暗中同意软链接,是python2.7的,其实它也己经暗中认可建立了三个python2的软链接了。

2.为分裂的实例创造成立布局文件(作品结尾附配置文件)

> vim /data/3306/my.cnf
> vim /data/3307/my.cnf

重新命名默许python软链接为python2.7以便3.5的版本成为默许环境变量

3.创设MySQL多实例运行文件(小说结尾附运维文件)

> vim /data/3306/mysql
> vim /data/3307/mysql
sudo mv /usr/bin/python /usr/bin/python2.7

4.授权mysql用户目录权限

> chown -R mysql.mysql /data

1.将my.cnf文件权限设置成644
> chmod 644 /data/3306/my.cnf
> chmod 644 /data/3307/my.cnf

2.由于mysql脚本中保存了登录数据库的密码,需要将文件权限设置成700,只允许root,mysql访问
> chmod 700 /data/3306/mysql
> chmod 700 /data/3307/mysql

建立python3.5本子的软链接

5.配备MySQL命令全局使用路径

假定不为MySQL的吩咐配置全局路径,就不可能直接在命令行输入mysql,那样只好用全套径/application/msyq/bin/mysql
那样带着路径输出会比较费劲

1.确认mysql命令所在路径
    > ll /data/mysql/bin/mysql

2.修改PATH路径
    #修改文件
    > vim /etc/profile
    #添加如下一行
    > export PATH=/data/mysql/bin:$PATH
    #让其生效
    > source /etc/profile

3.检查PATH是否生效
    > echo $PATH

4.确认上个命令的输出是否有/mysql/bin:(Mysql安装的bin目录)
sudo ln -s /usr/local/python-3.5.6/bin/python3.5 /usr/bin/python

6.起初化数据库

> cd /usr/local/mysql/scripts/

1.注意5.5和MySQL 5.1的路径不同,MySQL 5.1 不在mysql/bin下
    > ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3306/data/ --user=mysql
    > ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3307/data/ --user=mysql

2.每个初始化出现两个ok则说明成功

当然,也能够不做上一步,而是将3.5本子的软链接成python3之类也是有效的。

7.启动、关闭MySQL

> /data/3306/mysql start
> /data/3307/mysql start
> /data/3306/mysql stop
> /data/3307/mysql stop

www.5929.com 17

8.检查是或不是运转成功

    > ps -ef | grep mysqld
或者
    > netstat -anp | grep 3306

譬如笔者做的便是新增python3的软链接指向python3.5所在的目录。
顺便也将配备文件也做了贰个软链接指向:

9.为用户扩张密码,修改密码

> mysqladmin -S /data/3306/mysql.sock -u root password '123.asd'
sudo ln -s /usr/local/python-3.5.6/bin/python3.5-config /usr/bin/python3-config

10.多实例数据库的登陆

本地登陆:
    > mysql -u root -p -S /data/3306/mysql.sock
远程登录:mysql –h主机名 -u用户名 –p密码 –P3306
    > system mysql -u root -p -S /data/3307/mysql.sock

补充

1.5添加实例(比如3308,ruguo )

> mkdir -p /data/3308/data 

#下面的两步操作注意文件中的端口号
> vim /data/3308/my.cnf
> vim /data/3308/mysql
> chown -R mysql.mysql /data
> chmod 644 /data/3308/my.cnf
> chmod 700 /data/3308/mysql
> cd /usr/local/mysql/scripts/
> ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3308/data/ --user=mysql
> /data/3308/mysql start
> mysqladmin -S /data/3308/mysql.sock -u root password '123.asd'

www.5929.com,注意
如无特别需求,推荐命名成差异python的软链接,因为您会意识如果你直接改了原本指向旧版本的软链接的话,pip,virtualenv等注重原版本python的工具必要改它的py文件头的环境变量。

附:

www.5929.com 18

1.MySQL多实例的陈设文件(标注的地点须要注意,每一种实例的端口要修改)

[client]
port=   3306     
socket =  /data/3306/mysql.sock

[mysql]
no-auto-rehash

[mysqld]
user= mysql
port= 3306
socket= /data/3306/mysql.sock
basedir = /usr/local/mysql
datadir = /data/3306/data
open_files_limit = 1024
back_log = 600
max_connections = 800
max_connect_errors = 3000
table_cache = 614
external-locking = FALSE
max_allowed_packet =8M
sort_buffer_size = 1M
join_buffer_size = 1M
thread_cache_size = 100
thread_concurrency = 2
query_cache_size = 2M
query_cache_limit = 1M
query_cache_min_res_unit = 2k
#default_table_type = InnoDB
thread_stack = 192K
#transaction_isolation = READ-COMMITTED
tmp_table_size = 2M
max_heap_table_size = 2M
long_query_time = 1
#log_long_format
#log-error = /data/3306/error.log
#log-slow-queries = /data/3306/slow.log
pid-file = /data/3306/mysql.pid
log-bin = /data/3306/mysql-bin
relay-log = /data/3306/relay-bin
relay-log-info-file = /data/3306/relay-log.info
binlog_cache_size = 1M
max_binlog_cache_size = 1M
max_binlog_size = 2M
expire_logs_days = 7
key_buffer_size = 16M
read_buffer_size = 1M
read_rnd_buffer_size = 1M
bulk_insert_buffer_size = 1M
#myisam_sort_buffer_size = 1M
#myisam_max_sort_file_size = 10G
#myisam_max_extra_sort_file_size = 10G
#myisam_repair_threads = 1
#myisam_recover

lower_case_table_names = 1
skip-name-resolve
slave-skip-errors = 1032,1062
replicate-ignore-db=mysql

server-id = 1

innodb_additional_mem_pool_size = 4M
innodb_buffer_pool_size = 32M
innodb_data_file_path = ibdata1:128M:autoextend
innodb_file_io_threads = 4
innodb_thread_concurrency = 8
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 2M
innodb_log_file_size = 4M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
innodb_file_per_table = 0

[mysqldump]
quick
max_allowed_packet = 2M

[mysqld_safe]
log-error=/data/3306/mysql_3306.err
pid-file=/data/3306/mysqld.pid     

万一您改改了原软链接,使得python实际指向的是新本子的python的话,pip等仍仰仗旧版本的工具要么重装要么修改它py文件的首行,按实际上处境再一次指向您的旧版本原版本的python环境,例如此处我就可一向改成/usr/bin/python2

2.MySQL多实例的运转文件(标注的地点供给注意,各样实例的端口要修改)

#init
port=3306
mysql_user="root"
mysql_pwd="yourpwd"
CmdPath="/usr/local/mysql/bin"
mysql_sock="/data/${port}/mysql.sock"
#startup function
function_start_mysql()
{
 if [ ! -e "$mysql_sock" ];then
     printf "Starting MySQL...\n"
     /bin/sh ${CmdPath}/mysqld_safe --defaults-file=/data/${port}/my.cnf 2>&1 > /dev/null &
   else
      printf "MySQL is running...\n"
      exit
    fi
}

#stop function
function_stop_mysql()
{
   if [ ! -e "$mysql_sock" ];then
      printf "MySQL is stopped...\n"
      exit
   else
      printf "Stoping MySQL...\n"
       ${CmdPath}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S /data/${port}/mysql.sock shutdown
   fi
}

#restart function
function_restart_mysql()
{
    printf "Restarting MySQL...\n"
   function_stop_mysql
    sleep 2
   function_start_mysql
}

case $1 in
start)
    function_start_mysql
;;
stop)
    function_stop_mysql
;;
restart)
    function_restart_mysql
;;
*)
    printf "Usage: /data/${port}/mysql {start|stop|restart}\n"
esac    

虚拟环境设置差异版本的python

始建好项目目录,cd进到目录下。

在开创python虚拟环境时,能够钦点虚拟环境要采纳的python版本,例如下命令(使用-p参数指明python解释器的路子):

 -p PYTHON_EXE, --python=PYTHON_EXE
 The Python interpreter to use, e.g.,
 --python=python3.5 will use the python3.5 interpreter
 to create the new environment. The default is the
 interpreter that virtualenv was installed with
 (/usr/bin/python)

例:

virtualenv -p /usr/bin/python2 ENV2.7 #创建python2.7的虚拟环境
virtualenv -p /usr/bin/python3 ENV3.5 #创建python3.5的虚拟环境
virtualenv --python=python3 my-env #创建python3.5的虚拟环境

从而装三个本子的python,有多少个缘故很重点,也等于想要使用virtualenv创设隔开的虚拟环境的时候钦定不一致python版本。不过后边小编举行编写翻译安装的时候从不点名编译安装上zlib库,就会冒出以下如图难题:

www.5929.com 19

报找不到zlib模块错误。

所以最好照旧系统原环境变量安装成高版本的python,或开始展览python编写翻译安装的时候记得加上–with-zlib。
最好–with-zlib-devel和readline也带上。

理所当然,补救措施也是部分,正是重新开展编写翻译安装。
(重新举办本文最初步的操作,当然本文最起首作者己经补充校对过了编写翻译安装时的配备。)

作者由于重新编写翻译后如故报zlib模块错误,小编并不想弄污原来python2.7的条件,所以决定尝试virtualenv下载源码来利用,而zlib也进行编写翻译安装来让python3也能健康导入zlib模块。

下载zlib模块并进行编译安装

官网下载最新版本的zlib源码文件,作者下载的是zlib-1.2.11.tar.gz

安装zlib:

tar xzvf zlib-1.2.11.tar.gz
cd zlib-1.2.11

建议私下认可路径安装,编写翻译三部曲:

./configure
make
make install

python导入zlib

正如图,编写翻译安装完毕zlib后,进python3测试己经也许符合规律导入zlib包。

www.5929.com 20

zlib安装完后,libz.a在/usr/local/lib/,opensuse中zlib.h暗中同意放在/usr/local/include/中。
别的linux的zlib.h文件一般在/usr/include中。

再也编写翻译python并钦定zlib

倘使还产生少数导入不成功,或你想直接软链接升级python旧版本的,大概需求再次编写翻译python。

跻身Python源码文件目录,重新编写翻译Python

sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib=/usr/include

或者:

./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib-dir=/usr/local/lib

都足以完毕python对zlib库的支撑,在python源码中平昔import
zlib即可使用zlib了。

下载virtualenv源码包

直接到pypi下载16.0.0版本。
tar命令实行解压

tar xvfz virtualenv-16.0.0.tar.gz
cd virtualenv-16.0.0

此目录下文件如下,我们主要运用的并不是setup安装,而是直接运用它的virtualenv.py文件。

www.5929.com 21

virtualenv创造虚拟环境

在档次目录下直接钦点python版本及virtualenv.py的相对路径实行创办虚拟环境:

sudo python3 /home/operation/virtualenv-16.0.0/virtualenv.py py3

www.5929.com 22

可以不实行全局安装,而是用户下进行虚拟化环境得以一贯利用python3
后接virtualenv.py运行,完美化解必要。

也足以行使原python2下的大局virtualenv来推行,一样能够成立,如:

operation@opensuse-wordpress:/work> sudo virtualenv --python=python3 my_py3_env
[sudo] password for root: 
Running virtualenv with interpreter /usr/bin/python3
Using base prefix '/usr/local/python-3.5.6'
New python executable in /work/my_py3_env/bin/python3
Also creating executable in /work/my_py3_env/bin/python
Please make sure you remove any previous custom paths from your /root/.pydistutils.cfg file.
Installing setuptools, pip, wheel...done.

虚拟隔开环境目录如下:

www.5929.com 23

现实virtualenv的利用命令等见相关文章,在此就不再详述。
如此,在liunx下己经能够实现多版本的python完美国共产党存。

上述正是本文的全体内容,希望对大家的求学抱有帮忙,也期待我们多多协理脚本之家。

你或然感兴趣的篇章:

  • 在Linux上安装Python的Flask框架和创制第一个app实例的科目
  • 详解linux下安装python3环境
  • 详解怎么样在 Linux 中装置新型的 Python 3.6
    版本
  • Linux上安装Python的PIL和Pillow库处理图片的实例教程
  • Linux环境下MySQL-python安装进程分享
  • 在Linux系统上设置Python的Scrapy框架的教程
  • Linux中Python
    环境软件包安装步骤
  • 详解Linux
    Centos7下安装Python的方法
  • Linux下为分裂版本python安装第③方库
  • Linux下安装IPython配置python开发条件教程

Leave a Comment.