2012-06-07 71 views
12

有没有人能够在SLES 11 SP1上成功安装Python 2.7?如果是这样,怎么样?我已经尝试了几种方法来安装,如下所示:在SLES 11上安装Python 2.7

  1. 从源头上尝试建设 - 这实际上是非常单调乏味,超出了我的耐心和技能水平。
  2. 尝试使用PythonBrew,但它放弃了错误。
  3. 尝试从OpenSuse 11仓库安装RPM,但由于依赖性问题而无法完成。

回答

21

从源代码构建是最合适的答案。您的耐心将会带来巨大的收益。

像下面的脚本应该足够了(credit):

#!/bin/bash 
# Install Python 2.7.12 alternatively 
zypper install -t pattern sdk_c_c++ -y 
zypper install readline-devel openssl-devel gmp-devel ncurses-devel gdbm-devel zlib-devel expat-devel libGL-devel tk tix gcc-c++ libX11-devel glibc-devel bzip2 tar tcl-devel tk-devel pkgconfig tix-devel bzip2-devel sqlite-devel autoconf db4-devel libffi-devel valgrind-devel -y 

mkdir tmp 
cd tmp 
wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz 
tar xvfz Python-2.7.12.tgz 
cd Python-2.7.12 
./configure --prefix=/opt/python2.7 --enable-shared 
make 
make altinstall 
echo "/opt/python2.7/lib" >> /etc/ld.so.conf.d/opt-python2.7.conf 
ldconfig 
cd .. 
cd .. 
rm -rf tmp 

...如果遇到有关证书链错误,你有你的流量不被拦截的信心,你可以使用--no-check-certificate命令行选项为wget。这可能是必要的,因为SLES11已经足够老旧,其openssl库可能不支持python.org的Web服务器预期的TLS功能。如果您使用该选项,请根据https://www.python.org/downloads/release/python-2712/(如果需要,使用非SLES11浏览器)检查tarball的签名。

+0

感谢您的指针。我们决定切换到openSUSE并将需要2.7的任务移到该操作系统。 –

+2

我已经以类似的方式安装了python3.3。谢谢! – sebast26

+1

男人,这个剧本是炸弹! – nemesisfixx