Python:修订间差异

来自牛奶河Wiki
跳到导航 跳到搜索
第21行: 第21行:


====python====
====python====
  curl <nowiki>https://www.python.org/ftp/python/3.11.7/Python-3.11.7.tgz</nowiki> -O Python-3.11.7.tgz
  curl <nowiki>https://www.python.org/ftp/python/3.12.3/Python-3.12.3.tgz</nowiki> -O Python-3.12.3.tgz
  ./configure --prefix=/opt/python3.11 --with-openssl=/opt/openssl --with-openssl-rpath=auto
  ./configure --prefix=/opt/python3.12 --with-openssl=/opt/openssl --with-openssl-rpath=auto
  make -j4 && make install
  make -j4 && make install
  # /usr/local/bin/python3
  # /usr/local/bin/python3

2024年5月21日 (二) 09:10的版本

环境

Python 从 3.11 之后,采用了 SSL 的加密方式,需要依赖 openssl-1.1.1。--enable-optimization 优化选项,需要依赖 gcc 9 以上版本。

安装依赖包

# yum update -y
yum install -y git make cmake htop gcc gcc-c++ kernel-devel bzip2 bzip2-devel mlocate sqlite-devel zlib zlib-devel libffi-devel openssl-devel libcurl-devel chrony  wget dmidecode net-tools openssh-server openssh-client perl-CPAN perl-IPC-Cmd
- OR - 
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install libffi-devel -y

openssl

curl https://www.openssl.org/source/openssl-3.0.12.tar.gz -O openssl-3.0.12.tar.gz
./config --prefix=/opt/openssl
make -j4 && make install
ln -sf /opt/openssl/bin/openssl /usr/bin/openssl
# ln -s /opt/openssl/lib64 /opt/openssl/lib
echo "/opt/openssl/lib/" >> /etc/ld.so.conf
ldconfig -v
openssl version

python

curl https://www.python.org/ftp/python/3.12.3/Python-3.12.3.tgz -O Python-3.12.3.tgz
./configure --prefix=/opt/python3.12 --with-openssl=/opt/openssl --with-openssl-rpath=auto
make -j4 && make install
# /usr/local/bin/python3
# import ssl

upgrade

python3 -m pip install --upgrade pip
python3 -m pip install --upgrade numpy
# tensorflow-cpu-aws 2.12.0 requires numpy<1.24,>=1.22, but you have numpy 1.24.4 which is incompatible.
pip install numpy==1.23.5