amkozlov / raxml-ng

RAxML Next Generation: faster, easier-to-use and more flexible
GNU Affero General Public License v3.0
379 stars 64 forks source link

Add 'install' target for CMake #66

Closed tardigradus closed 5 years ago

tardigradus commented 5 years ago

The file src/CMakeLists.txt doesn't contain an install target. While it would be generally useful if it did and this woudl, to my mind, good practice. More specifically, however, it would help those using automated build systems, such as EasyBuild. As it is, either the build recipe for RAxML-NG needs to add a patch for src/CMakeLists.txt which just adds

install(TARGETS raxml_module DESTINATION bin)

or a new generic build template has to be added which can deal with CMake setups whose install step is missing.

Thus, adding the build step to RAxML-NG seems to me the best option, in addition to being the one which requires the least effort.

amkozlov commented 5 years ago

Thanks for the hint, just added it in the dev branch: https://github.com/amkozlov/raxml-ng/tree/dev

Please test if it works for you.

ghost commented 5 years ago

Are there any good workshop materials for RAXML-NG, I want to write a Chinese tutorial for it.

tardigradus commented 5 years ago

Using https://github.com/amkozlov/raxml-ng/archive/dev.zip as the source target, I get the following error on the configure step:

-- Using flags: -std=c++11 -Wall -Wextra -D_RAXML_PTHREADS -pthread -D_RAXML_TERRAPHAST
-- Building dependencies in: /trinity/shared/easybuild/build/RAxMLNG/dev/foss-2018b-OpenMPI-3.1.3/easybuild_obj/localdeps
CMake Error at libs/CMakeLists.txt:7 (add_subdirectory):
  The source directory

    /trinity/shared/easybuild/build/RAxMLNG/dev/foss-2018b-OpenMPI-3.1.3/raxml-ng-dev/libs/pll-modules

  does not contain a CMakeLists.txt file.

CMake Error at libs/CMakeLists.txt:12 (file):
  file COPY cannot find
  "/trinity/shared/easybuild/build/RAxMLNG/dev/foss-2018b-OpenMPI-3.1.3/raxml-ng-dev/libs/pll-modules/src/pllmod_common.h".

CMake Error at libs/CMakeLists.txt:49 (add_subdirectory):
  The source directory

    /trinity/shared/easybuild/build/RAxMLNG/dev/foss-2018b-OpenMPI-3.1.3/raxml-ng-dev/libs/terraphast

  does not contain a CMakeLists.txt file.

This causes the configure step to fail.

amkozlov commented 5 years ago

@tardigradus : please use git clone --recursive to get raxml-ng with all dependencies, as explained here:

https://github.com/amkozlov/raxml-ng/wiki/Installation#building-development-branch

tardigradus commented 5 years ago

There is something weird about the times of the comments. I see the the comment with the link to the dev branch and the one about the Chinese tutorial as being in the future:

amkozlov commented 5 hours from now 
lixingguang commented 6 hours from now

and my comment (as well as this one, I suppose) appear before them :-/

ghost commented 5 years ago

could you please send me a English workshop of it, and can make it into Chinese.

amkozlov commented 5 years ago

@lixingguang : your're welcome, please have a look at these tutorials:

  1. https://github.com/amkozlov/raxml-ng/wiki/Tutorial
  2. https://www.preprints.org/manuscript/201905.0056/v1
  3. https://github.com/amkozlov/ng-tutorial/wiki/evomics2019 + slides (https://cme.h-its.org/exelixis/pubs/Krumlov2019_RAxML.pdf)
tardigradus commented 5 years ago

It works with a zip file of the recursively cloned git repo. Thanks.

amkozlov commented 5 years ago

@tardigradus thanks for the confirmation! Closing this issue then.