原文地址:http://www.cnblogs.com/foxgab/p/6900637.html
xx-net在ubuntu上运行用起来很方便,如果有一些原因必须用CentOS,麻烦就比较大了。
首先需要升级python版本,CentOS自带的2.6版本是用不了的,必须升级到2.7以上,但是不能用python3,yum可能升不到2.7,所以只能去官网下载源码编译安装。yum本身依赖python,所以不能卸载python,只能另外安装。
1.升级Python
首先安装编译需要的库和工具:
yum install -y gcc gcc-c++ autoconf automake wget
下载最新版本的python2。(截止17年1月是2.4.13)
wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
解压:
tar -xzf ./Python-2.7.13.tgz
xx-net需要python的_ssl模块和_socket模块,可能默认不安装,修改配置文件以确保编译安装这些模块
vi Python-2.7.3/Modules/Setup.dist
去掉下面几行的注释:
1 _socket socketmodule.c timemodule.c
2
3 _ssl _ssl.c
4 -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl
5 -L$(SSL)/lib -lssl -lcrypto
保存后开始编译
cd ~/Python-2.7.3
./configure --prefix=/usr/local #指定安装目录
make && make install
让新版的python成为默认,系统自带的老版本也保留
mv /usr/bin/python /usr/bin/python2.6
ln -s /usr/local/bin/python2.7 /usr/bin/python
为了保证依赖python的yum不出毛病,修改调用的python程序
vi /usr/bin/yum
将首行的#!/usr/bin/python改为#!/usr/bin/python2.6
2.安装pyOpenSSL库
xx- net使用pyOpenSSL这个库来加密https连接,这里有点麻烦,可以想办法安装pip,然后用pip安装,但是我觉得pip装起来也挺麻烦,而 且以后基本用不着,所以就手动去官网下载这个库安装,安装需要的依赖:pyOpenSSL --> setuptools --> libffi-devel
yum -y install libffi-devel
wget --no-check-certificate https://pypi.python.org/packages/e8/68/f968ebc015c7e0021e76b60b8cfd29f9ffbae4b3b58d96ad20045a99562e/setuptools-32.3.1.zip
wget --no-check-certificate https://pypi.python.org/packages/0c/d6/b1fe519846a21614fa4f8233361574eddb223e0bc36b182140d916acfb3b/pyOpenSSL-16.2.0.tar.gz
uzip setuptools-32.3.1.zip
tar -xzf pyOpenSSL-16.2.0.tar.gz
安装:
cd setuptools-32.3.1
./setup install
cd ../pyOpenSSL-16.2.0
./setup install
安装时需要联网下载一下东西,可能有些慢,耐心等待,如果失败重试一下。
3.最后一步
直接运行xx-net还是报错,因为它还需要一个依赖库
yum -y install nss-tools
现在可以了用xx-net了,试试看
cd ~/XX-Net-2.8.9
setsid ./start.sh &