ci-group / revolve

Robot evolution framework for the Triangle of Life project
https://evosphere.eu/
29 stars 32 forks source link

MultiNEAT is not automatically installed #89

Open DaanZ opened 4 years ago

DaanZ commented 4 years ago

We should supply the revolve CMakeLists.txt with

add_subdirectory(thirdparty/MultiNEAT)

But this does not build MultiNEAT successfully.

CMake Error at build/thirdparty/MultiNEAT/MultiNEATConfig.cmake:21 (include):
  include could not find load file:
/home/daanz/revolve_workspace/revolve_battery/build/thirdparty/MultiNEAT/MultiNEATTargets.cmake
Call Stack (most recent call first):
  cpprevolve/revolve/brains/CMakeLists.txt:21 (find_package)

The MultiNEAT cmake file should create the MultiNEATTargets.cmake, but this is not the case.

portaloffreedom commented 4 years ago

MultiNEAT is supposed to be installed system wise to make this work. MultiNEATConfig.cmake is generated depending on your configuration.

This is the current situation, I understand that there is a better way to do this, without installing MultiNEAT and it would be preferrable, but I need more experience on cmake to understand how to do this properly.

DaanZ commented 4 years ago

I am going to read https://zhjwpku.com/assets/pdf/books/Managing.Projects.With.Gnu.Make.3Rd.Edition.pdf to possibly assist with this.

portaloffreedom commented 4 years ago

Not really. Make is an old tool very manual and unpractical. What I used as a reference in modern cmake is this: https://pabloariasal.github.io/2018/02/19/its-time-to-do-cmake-right/