第一章[环境搭建]1.2:ubuntu linux编译安装python(3.12.0)

第一章[环境搭建]1.2:ubuntu linux编译安装python(3.12.0)_第1张图片

一,查看系统自带python的版本

liuhongdi@lhdpc:~$ python3 --version
Python 3.11.6

查看linux的版本:

liuhongdi@lhdpc:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 23.10
Release:        23.10
Codename:       mantic

说明:linux主要分为debian系统和redhat系,我们这里以debian系的ubuntu为例

第一章[环境搭建]1.2:ubuntu linux编译安装python(3.12.0)_第2张图片

二,安装的官方文档:

1,配置用的选项:

3. 配置 Python — Python 3.12.0 文档构建要求: 编译 CPython 所需的特性: C11 编译器。 可选的 C11 特性 不是必须的。, 对 IEEE 754 浮点数和 浮点 Not-a-Number (NaN) 的支持。, 对线程的支持。, 用于 ssl 和 hashlib 模块的 OpenSSL 1.1.1 或更新版本。, 在 Windows 上,需要 Microsoft Visual Studio 2017 或更新版本...https://docs.python.org/zh-cn/3/using/configure.html

2,安装依赖包的文档

Setup and buildingThese instructions cover how to get a working copy of the source code and a compiled version of the CPython interpreter (CPython is the version of Python available from https://www.python.org/). It...https://devguide.python.org/getting-started/setup-building/#install-dependencies

可能涉及到的依赖包,文档有讲到,如图:

第一章[环境搭建]1.2:ubuntu linux编译安装python(3.12.0)_第3张图片

说明:刘宏缔的go森林是一个专注golang的博客,
网址:https://blog.csdn.net/weixin_43881017
原文:
说明:作者:刘宏缔 邮箱: [email protected]

三,我们安装python最新版本的步骤:

1,安装依赖包:

apt-get install build-essential gdb lcov pkg-config libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-dev libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev lzma lzma-dev tk-dev uuid-dev zlib1g-dev

2,得到下载链接

访问官网的下载页面:

https://www.python.org/downloads/https://www.python.org/downloads/

如图:

第一章[环境搭建]1.2:ubuntu linux编译安装python(3.12.0)_第4张图片

我们在Gzipped source tarball这个链接上右击,选择:复制链接地址

3,从命令行下载:

创建源代码文件和安装程序的目录

sudo mkdir /usr/local/source
sudo mkdir /usr/local/soft

进入保存源代码的目录,

cd /usr/local/source

用wget下载我们所复制的下载链接

wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz

 说明:wget是linux上执行下载的客户端命令,如果提示找不到此程序,
可以执行下面的命令进行安装

sudo apt-get update && sudo apt-get install wget

4,下载完成之后解压缩:

说明: 

tar命令的用途是打包备份文件
参数 z:用gzip/gunzip压缩或解压
         x:提取文件
         v:verbose:显示命令的执行过程
         f:指定要解压的文件名

tar -zxvf Python-3.12.0.tgz

5,配置:
configure的用途:检测安装环境,配置安装参数,生成供编译用的Makefile

–prefix :指定安装路径
–enable-optimizations: 用来启动优化

./configure --prefix=/usr/local/soft/python3.12 --enable-optimizations

6,编译:

make负责生成目标文件

make

7,安装

make install:负责把编译生成的目标文件安装到预定的目录

make install

四,安装完成后查看安装是否成功:

参数--version: 打印当前python的版本

/usr/local/soft/python3.12/bin/python3 --version

运行结果:

Python 3.12.0

五,安装过程中报错的处理:

安装过程中不会一帆风顺,中间遇到报错的一些处理:

1,pkg-config报错

报错:
configure: WARNING: pkg-config is missing. Some dependencies may not be detected correctly.

解决:缺少pkg-config这个包,安装即可

apt-get install pkg-config

2,gcc报错

报错信息:

configure: error: no acceptable C compiler found in $PATH

如下:

checking for gcc... no
checking for cc... no
checking for cl.exe... no
checking for clang... no
configure: error: in `/usr/local/source/Python-3.12.0':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details

解决:安装gcc套件即可

apt-get install gcc

3,make报错

报错信息

root@lhdpc:/usr/local/source/Python-3.12.0# make
Command 'make' not found, but can be installed with:
apt install make        # version 4.3-4.1build1, or
apt install make-guile  # version 4.3-4.1build1

解决:提示说make未找到,

按提示执行apt install make即可

apt install make

4,zlib报错

报错信息:

Traceback (most recent call last):
  File "", line 518, in _get_decompress_func
ModuleNotFoundError: No module named 'zlib'

解决:

apt-get install zlib1g-dev

5,openssl报错

报错信息:

Could not build the ssl module!
Python requires a OpenSSL 1.1.1 or newer

解决:

apt-get install libssl-dev

六,编译安装不是必需的工作

最后说一下在linux上安装python不是必需的工作
1,linux上默认已安装了python套件,因为象apt/yum等包管理工具需要python环境,
     所以我们可以直接使用系统自带的python,
     例如用where命令可以看到自带python的安装路径

liuhongdi@lhdpc:~$ whereis python3
python3: /usr/bin/python3 /usr/lib/python3 
/etc/python3 /usr/share/python3 /usr/share/man/man1/python3.1.gz

2,如果对linux不熟悉,可以先从windows或macos环境开始,
      这两个环境更容易上手

你可能感兴趣的:(零基础python从入门到精通,linux,ubuntu,python)