安装#

依赖项#

pygmo 有以下必需的运行时依赖项:

此外,pygmo 还有以下可选的运行时依赖项:

#

pygmo 包可以从多个平台上的各种包管理器获取。

Conda#

pygmo 可以通过 conda 包管理器在 Linux、OSX 和 Windows 上使用,这要归功于 conda-forge 提供的基础设施。要通过 conda 安装 pygmo,您只需将 conda-forge 添加到频道中,然后我们可以立即安装 pygmo:

$ conda config --add channels conda-forge
$ conda config --set channel_priority strict
$ conda install pygmo

pygmo的conda包由核心开发团队维护,当新版本的pygmo发布时,它们会定期更新。

请参考conda文档以获取有关如何设置和管理您的conda安装的说明。

pip#

pygmo 也可以通过 pip 包安装程序在 Linux 上使用。使用 pip 安装 pygmo 非常简单:

$ pip install pygmo

如果你想为单个用户而不是系统范围内安装pygmo,这通常是个好主意,你可以这样做:

$ pip install --user pygmo

一个更好的想法是利用Python的 虚拟环境

pygmo 的 pip 包由核心开发团队维护,并在发布新版本的 pygmo 时进行更新。

警告

然而请注意,我们强烈建议用户使用conda而不是pip来安装pygmo。原因是pygmo建立在一个中等复杂的C++库堆栈上,这些库必须与pygmo一起打包在pip包中。如果用户将pygmo与其他与pygmo共享依赖的Python包一起使用,这就会成为一个问题,因为可能会同时加载多个不兼容的相同C++库版本,导致崩溃和运行时行为异常。conda包则不会遇到这个问题。

注意

任何针对pip构建报告的bug,如果无法通过其他安装方法(例如conda包、从源代码安装)重现,将自动关闭为无效。

注意

由于人力不足,我们目前无法为Windows或OSX提供pip包。如果您愿意帮助我们,请通过gitter频道与我们联系,或者(更好的是)在github上提交一个PR。

Arch Linux#

pygmo 可在 Arch Linux 的 Arch 用户仓库 (AUR) 中找到。建议使用像 yaypikaur 这样的 AUR 助手以简化安装过程。 更多信息请参阅 Arch Linux 维基上的 AUR 助手 页面。

安装 python-pygmo:

$ yay -S python-pygmo

从源代码安装#

为了从源代码安装pygmo,您需要:

在确保系统上安装了依赖项后,您可以从GitHub发布页面下载pygmo源代码。或者,如果您喜欢生活在技术的最前沿,您可以通过git获取最新版本的pygmo:

$ git clone https://github.com/esa/pygmo2.git

我们遵循基于PR的常规开发工作流程,因此pygmo的master分支通常保持在可工作状态。

在下载和/或解压pygmo的源代码后,进入pygmo的源代码树,创建一个build目录并cd进入该目录。例如,在类Unix系统上:

$ cd /path/to/pygmo
$ mkdir build
$ cd build

一旦你进入build目录,你必须使用cmake来配置你的构建。你可以设置各种有用的CMake变量,例如:

  • CMAKE_BUILD_TYPE: 构建类型 (Release, Debug, 等), 默认为 Release.

  • CMAKE_PREFIX_PATH: CMake在查找依赖项时将搜索的额外路径。

  • PYGMO_INSTALL_PATH: pygmo模块将安装的路径。如果留空(默认),pygmo将安装在Python安装的全局模块目录中。

  • PYGMO_ENABLE_IPO: 将此标志设置为ON以编译pygmo 使用链接时优化。需要编译器支持, 默认为OFF

请查阅CMake的文档以获取有关CMake变量和选项的更多详细信息。

PYGMO_INSTALL_PATH 选项特别重要。如果您想将 pygmo 安装在本地而不是全局(这通常是个好主意),您可以将此变量设置为 python -m site --user-site 的输出。

使用CMake配置构建后,我们可以继续实际构建pygmo:

$ cmake --build .

最后,我们可以使用以下命令安装pygmo:

$ cmake  --build . --target install

验证安装#

您可以通过运行测试套件来验证pygmo是否已成功编译和安装。在Python会话中,运行以下命令:

>>> import pygmo
>>> pygmo.test.run_test_suite()

如果这些命令执行时没有任何错误,那么你的pygmo安装就可以使用了。

获取帮助#

如果您在安装pygmo时遇到问题,请随时通过我们的gitter频道或通过在github上提交问题报告与我们联系。