准备工作
我们从linux centos7 开始
Python 3.5.3的准备工作:
yum groupinstall –y 'Development Tools'
yum install –y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel
用 –y来取消中间必须要打的y选项,可以挂机放羊。
安装Python3.5.3
我们先:
cd /opt
进到opt文件夹下,wget www.python.org/ftp/python/….啪啦啪啦啪啦 。之后的路径可以自己选择要用的版本当然我们这边用的是python3.5.3
正经的获取安装包的方法如下:
wget https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tar.xz
完成之后 ls 会发现在目录下多了名为: Python-3.5.3.tar.xz的压缩包
tar xvf Python-3.5.3.tar.xz
解压到当前路径下,目录中就多了一个叫Python-3.5.3的文件夹
cd Python-3.5.3
进入文件夹
./configure --prefix=/usr/local/python3
很多示范中的其中一种,当然,你可以选择相信它,但是如果你要用到sqlite的话…我建议你还是选择
./configure --enable-shared --enable-loadable-sqlite-extensions --prefix=/usr/local/python3
画风可能不一样,起码这样做你会不用头疼sqlite3的库的问题。当然,除非你照准备工作那样做的话,玩mysql的也是类似的设置。
make
make install
安装,不过千万不要像我一样写成makefile了…我也懵逼了很久。
基本安装完成了,但是接下来我们要谈谈软链接的事:
如果你不愿意 cd来cd去看/bin目录,当然也没有这个必要,
先宰掉/bin/python 这个python2.x的链接吧,我们要用python命令直接使用python3所以得把这个给替换掉
rm -rf /bin/python
ln -s /usr/local/python3/bin/python3.5 /bin/python
软链接一连,这个路径就到/bin下了,现在可以试试直接在命令行打
python
some Problems:
也许你会一路顺利,但也许你会幸运的遇到一些问题
like follows:
probems1:
python3: error while loading shared libraries: libpython3.5m.so.1.0: cannot open shared object file: No such file or directory(大意就是找不到
libpython3.5m.so.1.0
这个动态库)
类似于libpython3.5m.so描述:
为什么找不到这个动态库了呢?我找了
/usr/lib
确实是没有这个东西的,但其他机器一旦安装好之后就可以正常运行了,这是怎么回事?直到一个大佬和我讲了linux的动态库管理…solution:
先让我们找找这个文件到底在哪里。
whereis libpython3.5m.so.1.0
因为是装在/usr/local/python3目录下的,在/usr/local/lib和/usr/local/python3/lib中找到了该文件。
哦?这不是在吗?但是为什么一直提示呢?
其实:
ldconfig
命令的用途主要是在默认搜寻目录/lib
和/usr/lib
以及动态库配置文件/etc/ld.so.conf
内所列的目录下,搜索出可共享的动态链接库(格式如lib*.so*
),进而创建出动态装入程序(ld.so
)所需的连接和缓存文件。缓存文件默认为/etc/ld.so.cache
,此文件保存已排好序的动态链接库名字列表,为了让动态链接库为系统所共享,需运行动态链接库的管理命令ldconfig
.所以,并不是没有装好而是可共享动态链接库的缓存文件没有被刷新。
列出当前可用的共享库中是否存在libpython3.5m.so.1.0
ldconfig -p|grep libpython3.5m.so.1.0
找到了,是有的,那么就是/etc/ld.so.cache
没有刷新的问题了。
如果没有的话 , 说明在/etc/ld.so.conf.d/
目录下,新建一个python.conf
,把lib所在的位置包含进去就好了,本文环境的话,内容就是/usr/local/python3/lib
刷新缓存:
ldconfig
再次敲入python,即可进入大python的互动命令行
好了,差不多搞完了?
不不不,还差的远,有些东西永远地失去了作用,现在我们需要回过头来拯救他们
cd /bin
ll | grep python
找到python下面的python2的链接,可能会是..
开始拯救yum
vim /bin/yum
修改 yum文件
最开头会有一个引用的python路径,因为yum是用的python2的工具,所以我们需要把它改过来
把#!/usr/bin/python 改为 #!/usr/bin/python2 你可别告诉我你不会用vim
恩,这时候尝试使用yum,还会遇到一个报错,这时候,和上面一样,我们只要用vim找到那个文件并修改其引用就可以了。
当然,有个工具也不要忘记加上:
ln –s /usr/local/python3/bin/pip3 /bin/pip
添加pip的软链接,pip工具就能用于安装Django了
Django安装
前面都部署好了话只需要:
pip install Django
注意Django第一个字母大写,哈哈,其实你会发现小写也并咩有错。
好了,给你个链接,开始django的第一步吧
参考文献 : http://man.linuxde.net/ldconfig
以及各种教程