- 然后,安装依赖库.
$ pip3 install psutil
$ tar -zxvf peter-ch-MultiNEAT-0dc93aa.tar.gz
$ cd peter-ch-MultiNEAT-0dc93aa
通过MN_BUILD环境变量来设置所需的系统(boost或cython)。
$ export MN_BUILD=boost
编译
$ python3.7 setup.py build_ext
$ python3.7 setup.py install
$ python3.7
Python 3.7.7 (default, Oct 3 2020, 12:01:51)
[GCC 7.5.0] on linux
Type “help”, “copyright”, “credits” or “license” for more information.
import MultiNEAT
MultiNEAT.str()
“<module ‘MultiNEAT’ from ‘/home/brainiac/Program/python3.7/lib/python3.7/site-packages/multineat-0.5-py3.7-linux-x86_64.egg/MultiNEAT/init.py’>”
[](
)安装过程遇到问题及解决方法
Note
如在编译时遇到如下问题:
$ python3.7 setup.py build_ext
…
…
/usr/bin/ld: cannot find -lboost_python36
/usr/bin/ld: cannot find -lboost_numpy36
collect2: error: ld returned 1 exit status
error: command ‘g++’ failed with exit status 1
由于已经安装了boost库,通过搜索boost_python
与boost_numpy
可以发现,在/usr/lib/x86_64-linux-gnu
目录中包含以下文件
…
libboost_numpy3.a
libboost_numpy3-py36.a
libboost_numpy3-py36.so
libboost_numpy3-py36.so.1.65.1
libboost_numpy3.so
libboost_numpy.a
libboost_numpy-py27.a
libboost_numpy-py27.so
libboost_numpy-py27.so.1.65.1
libboost_numpy.so
…
libboost_python3.a
libboost_python3-py36.a
libboost_python3-py36.so
libboost_python3-py36.so.1.65.1
libboost_python3.so
libboost_python.a
libboost_python-py27.a
libboost_python-py27.so
libboost_python-py27.so.1.65.1
libbo
ost_python-py36.a
libboost_python-py36.so
libboost_python.so
…
可以看到虽然不存在libboost_python36.so
和libboost_numpy36.so
,但是存在libboost_python3-py36.so
、libboost_python3.so
、libboost_python.so
、libboost_numpy3-py36.so
、libboost_numpy-py27.so
、libboost_numpy.so
,因此根据python版本可以选择使用对应的动态链接库,由于以python3.7为例,需要对文件进行修改。
使用以下方法:
在进行编译之前,首先需要修改目录下的以下两个文件.
$ vim CMakeLists.txt
修改line 15 & 16,将python36
修改为python37
,numpy36
修改为numpy37
,37
即需要安装MultiNEAT的python版本号,可以根据需要进行修改,修改后如下:
…
…
find_package(Boost COMPONENTS
date_time
system
filesystem
python37
numpy37
serialization)
…
…
$ vim setup.py
最后
🍅 硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。
🍅 技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。
🍅 面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。
numpy37
serialization)
…
…
$ vim setup.py
最后
🍅 硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。
🍅 技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。
🍅 面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。
🍅 知识体系:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、Python、前端等等。