安装python时报以下错误
[root@node3 Python-3.6.10]# make -j3 && make install
...
zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [install] 错误 1
根据报错信息提示缺少zlib, 需要先安装
[root@node3 Python-3.6.10]# yum install zlib*
...
已安装:
zlib-ada.x86_64 0:1.4-0.5.20120830CVS.el7 zlib-ada-devel.x86_64 0:1.4-0.5.20120830CVS.el7 zlib-devel.x86_64 0:1.2.7-21.el7_9
zlib-static.x86_64 0:1.2.7-21.el7_9
作为依赖被安装:
dwz.x86_64 0:0.11-3.el7 fedora-gnat-project-common.noarch 0:3.9-1.el7 libgnat.x86_64 0:4.8.5-44.el7
libgnat-devel.x86_64 0:4.8.5-44.el7 libgnat-static.x86_64 0:4.8.5-44.el7 perl-srpm-macros.noarch 0:1-8.el7
redhat-rpm-config.noarch 0:9.1.0-88.el7.centos zip.x86_64 0:3.0-11.el7
完毕!
二、在安装源文件中修改Modules/Setup.dist文件,
[root@node3 Python-3.6.10]# vim Modules/Setup.dist
366行去掉注释#
zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
:wq
三、重新编译,并配置python3变量
[root@node3 Python-3.6.10]# make && make install
(cd /usr/local/python3/share/man/man1; ln -s python3.6.1 python3.1)
if test "xupgrade" != "xno" ; then \
case upgrade in \
upgrade) ensurepip="--upgrade" ;; \
install|*) ensurepip="" ;; \
esac; \
./python -E -m ensurepip \
$ensurepip --root=/ ; \
fi
Looking in links: /tmp/tmphk8mry_2
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
Successfully installed pip-18.1 setuptools-40.6.2
[root@node3 Python-3.6.10]# echo "PATH="/usr/local/py/bin:$PATH"" >> /etc/profile
[root@node3 Python-3.6.10]# source /etc/profile
[root@node3 Python-3.6.10]# python3.6
Python 3.6.8 (default, Jun 20 2023, 11:53:23)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>