Open winycg opened 6 years ago
Hi @winycg, you need to build with compatible version of gcc as was used for boost itself.
If you don't plan to change library itself, but simply use it, I recommend trying out the conda package that comes with all needed dependencies.
You can install the package in your active conda environment by running:
conda install multineat -c anton.matosov -c conda-forge
@anton-matosov Thanks for your help.I install the MultiNEAT library successfully.But when I run the TestXXX.py which in 'examples' folder,it will be appear the information as follows:
/home/winycg/anaconda3/bin/python3.6 /home/winycg/PycharmProjects/python_project/examples/TestNEAT_xor.py
Process finished with exit code 132 (interrupted by signal 4: SIGILL) I don't know why and hope for your precious help,thanks!
@anton-matosov I was succeed in running the TestNEAT_xor.py on my other PC.if the problem is unable to solve on my Notebook computer,I may reinstall the Ubuntu 16.04 .Thank you again for your help!
@winycg I had the same issue too with the prebuilt conda package. Work PC worked fine, home PC had the exit code 132 issue. It seems that the prebuilt version uses CPU instructions that are incompatible with some CPU models.
@ferreiramx Thanks for your answer. I know the reason why it cannot work.
Hi @winycg and @ferreiramx. I am sorry to hear you experience issues with the pre-built binaries. Build commands do not have any CPU specific optimizations enabled, but there can be C++ runtime incompatibilities. I have seen those issues on linux. But it can also be one of the 3rd party dependency provided via conda/conda-forge.
Can you list OS and runtime versions as well as list of conda packages installed on your machines for both working and non working configurations? This will greatly help to isolate the problem.
we use anaconda python distribution with python 3.6.7 on our Redhat linux system (3.10.0-1062.1.2.el7.x86_64).
following packages have been installed via conda command:
boost 1.67.0 py36_4
boost-cpp 1.67.0 h14c3975_4
libboost 1.67.0 h46d08c1_4
py-boost 1.67.0 py36h04863e7_4
multineat 0.5.2 py36_0
However, when we tried to test multineat,
python Python 3.6.7 | packaged by conda-forge | (default, Nov 21 2018, 02:32:25) [GCC 4.8.2 20140120 (Red Hat 4.8.2-15)] on linux Type "help", "copyright", "credits" or "license" for more information.
import MultiNEAT as NEAT Traceback (most recent call last): File "
", line 1, in File "/usr/physics/python/anaconda3-5.1.0/lib/python3.6/site-packages/MultiNEAT/init.py", line 3, in from ._MultiNEAT import * ImportError: /usr/physics/python/anaconda3-5.1.0/lib/python3.6/site-packages/MultiNEAT/_MultiNEAT.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN5boost7archive18text_oarchive_implINS0_13text_oarchiveEE4saveERKSs
any ideas?
thanks.
Traceback (most recent call last): File "/home/winycg/PycharmProjects/python_projext/peter-ch-MultiNEAT-86a6a5c/examples/gym/walker.py", line 6, in
import MultiNEAT as NEAT
File "/home/winycg/anaconda3/lib/python3.6/site-packages/MultiNEAT-0.5-py3.6-linux-x86_64.egg/MultiNEAT/init.py", line 3, in
from ._MultiNEAT import *
ImportError: /home/winycg/anaconda3/lib/python3.6/site-packages/MultiNEAT-0.5-py3.6-linux-x86_64.egg/MultiNEAT/_MultiNEAT.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN5boost7archive18text_iarchive_implINS0_13text_iarchiveEE13load_overrideERNS0_15class_name_typeEi
Process finished with exit code 1