在 Mac OS X Yosemite 上安装 PyGMO - 缺少 boost-python3?

Installing PyGMO on Mac OS X Yosemite - missing boost-python3?

我一直在尝试在我的 Mac OS X 10.10 上安装 PyGMO。我正在使用 Anaconda Python 2.3,所以它带有 python 3.4

我按照 http://esa.github.io/pygmo/install.html 上的说明进行操作,并尝试手动构建 boost,但构建 boost-python 时运气不佳......我可以在官方网站非常有限...

在使用ccmake 运行 pagmo/build 目录中的构建文件时,它抱怨没有找到 boost-python3...

所以我恢复使用 brew 来安装 boost。感谢我在此页面上找到的信息:http://ryanclouser.com/2015/07/16/Mac-OSX-Build-Boost-Python-with-Python3-Support/

现在我同时安装了 boost 和 boost-python,但是 PyGMOccmake 进程仍然抱怨无法找到 boost-python3

是否需要设置任何环境变量?在 ccmake 配置屏幕中,我需要设置 Boost_PYTHON3_LIBRARY_RELEASE 还是 Boost_PYTHON3_LIBRARY_DEBUG

最新编辑:此 SHA256 下面的不匹配问题已解决。原来这是由于当我 运行 命令时 source forge 站点关闭造成的...一些更好的错误消息会有所帮助。

但是,当我尝试使用 brew 获取 boost 和 boost-python 时,出现以下 SHA256 哈希码不匹配错误。

有人知道如何解决这个问题吗?

>$ sudo brew install boost-python --with-python3
==> Installing boost-python dependency: boost
==> Downloading https://homebrew.bintray.com/b...
####################################################################### 100.0%
==> Pouring boost-1.58.0.yosemite.bottle.tar.gz
 /usr/local/Cellar/boost/1.58.0: 10718 files, 486M
==> Installing boost-python
==> Downloading https://downloads.sourceforge....
==> Downloading from http://downloads.sourceforge.n...
####################################################################### 100.0%
Error: SHA256 mismatch
Expected: fdfc204fc33ec79c99b9a74944c3e54bd78be4f7f15e260c0e2700a36dc7d3e5
Actual: 818a4b8bbcb50878a8b1b9f71b4274d242ab46bf860c74676e98dec1d0248821
Archive: /Library/Caches/Homebrew/boost-python-1.58.0.tar.bz2
To retry an incomplete download, remove the file above.

几次尝试按照建议删除缓存的 boost 包文件,但也没有用。

谢谢大家。

好的,问题已解决。这是在 Mac OS X.

上获得提升的最佳实践

使用自制软件!但关键是要使用 --with-python3 开关!此页面的致谢:http://ryanclouser.com/2015/07/16/Mac-OSX-Build-Boost-Python-with-Python3-Support/

>$ brew install boost-python --with-python3

假设您已经 CMake,只需按照 PyGMO 网站上的说明进行操作即可。

pagmo/build>$ ccmake ../

这将打开配置屏幕,一切正常。如果没有,请在 pagmo/build 文件夹中执行 rm -rf * 以清除所有内容并重新开始(这解决了我上面提到的 boost-python3 的问题。

然后 运行 makesudo make install 如网站上所述。

PyGMO 之后应该可以在 python 中使用了!

我收到以下错误消息。但是,如果我在安装了 anaconda~/anaconda/lib 文件夹中启动 python,则 import PyGMO 可以正常工作,因此可能需要修复一些库路径问题。

>>> import PyGMO as gmo
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/xxx/anaconda/lib/python3.4/site-packages/PyGMO/__init__.py", line 57, in <module>
    from PyGMO import core, algorithm, migration, problem, topology, test, util
  File "/Users/xxx/anaconda/lib/python3.4/site-packages/PyGMO/core/__init__.py", line 2, in <module>
    from PyGMO.core._core import *
ImportError: dlopen(/Users/xxx/anaconda/lib/python3.4/site-packages/PyGMO/core/_core.so, 2): 
Library not loaded: libpython3.4m.dylib
  Referenced from: /Users/xxx/anaconda/lib/python3.4/site-packages/PyGMO/core/_core.so
  Reason: image not found

**最新编辑:**四处搜索,上面导入错误的部分解决方案是设置 DYLD_LIBRARY_PATH=~/anaconda/lib。这样,当您在控制台中启动 python 时,导入将起作用。但是,IPython-notebook 对我来说不会启动...还看到 Max OS 也没有真正的动态搜索...