我正在 Ubuntu 18.04 上从源代码构建 Python 3.10,遵循多个 Web 链接的说明,主要是 Python 网站 ( https://devguide.python.org/setup ) 和 RealPython ( https://realpython.com/installing-python/ #如何从源代码构建 python)。我将 Python-3.10.0.tgz 提取到/opt/Python3.10. 我有三个问题。
首先,Python 网站说要使用./configure --with-pydebug,而 RealPython 说要使用./configure --enable-optimizations --with-ensurepip=install. 另一位消息人士称要包括--enable-shared和--enable-unicode=ucs4。其中哪一个最好?我应该使用所有这些标志吗?
其次,我目前安装了Python 3.6和Python 3.8。它们安装在/usr. 按照我在网上看到的指示,我正在 /opt/Python3.10 中构建。我假设make altinstall(最后的构建步骤)将负责将构建安装在 下的常用文件夹中/usr,但这还不清楚。./configure --prefix=directory尽管没有任何网络资源提到这样做,但我应该使用吗?
--enable-optimizations最后,安装过程会减慢多少?
这是我第一次从源代码构建 Python,它将有助于澄清这些事情。谢谢你的帮助。
欢迎来到 Python 构建配置的世界!./configure我将一一介绍命令行选项。
--with-pydebug适用于核心 Python 开发人员,而不是仅使用Python 的开发人员(例如你和我)。它会创建调试符号并减慢执行速度。你不需要它。
--enable-optimizations从长远来看,对性能有好处,但代价是延长编译过程,可能延长 3 倍(或更多),具体取决于您的系统。但是,它会导致执行速度更快,因此我会在您的情况下使用它。
--with-ensurepip=install很好。您想要最新版本的pip.
--enable-shared对于您的情况来说可能不是一个好主意,所以我建议不要在这里使用它。阅读静态库和共享库之间的区别?了解其中的差异。基本上,由于您可能会安装到几乎肯定不在系统共享库搜索路径上的非系统路径(/opt/local参见下文),因此您很可能会遇到问题。静态构建将所有部分集中在一处,因此您可以从任何地方安装和运行它。这是以大小为代价的 -python二进制文件会相当大 - 但对于非系统管理员来说非常有用。即使您最终安装到/usr/local,我认为静态比共享更好/更容易。
--enable-unicode=ucs4是可选的,可能与您的系统不兼容。你不需要它。./configure足够聪明,可以找出最好的 Unicode 设置。这个选项是构建指令遗留下来的,有很多版本已经过时了。
--prefix--prefix=/opt/local 如果该目录已经存在并且在您的 中$PATH,或者您知道如何编辑您的$PATH中,我建议您使用~/.bashrc。否则,使用/usr/local或$HOME。/usr/local是本地软件安装(即 Ubuntu 不附带的东西)的指定系统范围位置,并且可能已经在您的$PATH. $HOME始终是一个不需要使用 的选项sudo,从安全角度来看这非常好。如果尚不存在,则需要添加到您的中。/home/your_username/bin$PATH
| 归档时间: |
|
| 查看次数: |
1232 次 |
| 最近记录: |