ssolo / ALE

Amalgamated likelihood estimation (ALE) is a probabilistic approach to exhaustively explore all reconciled gene trees that can be amalgamated as a combination of clades observed in a sample of gene trees. We implement the ALE approach in the context of a reconciliation model (cf. http://arxiv.org/abs/1211.4606 ), which allows for the duplication, transfer and loss of genes. We use ALE to efficiently approximate the sum of the joint likelihood over amalgamations and to find the reconciled gene tree that maximizes the joint likelihood among all such trees.
44 stars 15 forks source link

Install error: bpp-phyl required but not found #27

Closed ssgituser closed 10 months ago

ssgituser commented 2 years ago

When trying to install on a CentOS 8 server I get the following error:

CMake Error at CMakeLists.txt:48 (MESSAGE): bpp-phyl required but not found. Call Stack (most recent call first): CMakeLists.txt:59 (IMPROVED_FIND_LIBRARY)

After running the command:

cmake .. -DBUILD_STATIC=OFF -DCMAKE_LIBRARY_PATH=/usr/local/software/BIO++/lib64/ -DCMAKE_INCLUDE_PATH=/usr/local/software/BIO++/include/

I have built the BIO++ package with the following option:

-DCMAKE_INSTALL_PREFIX=/usr/local/software/BIO++/

And I do see the various directories of lib and include populated

drenal commented 2 years ago

Hi, please check it without the -DBUILD_STATIC=OFF as a first trial.

ssgituser commented 2 years ago

Have tried that, but no same error.

--


Sajesh Singh Manager, Systems and Scientific Computing American Museum of Natural History 200 Central Park West New York, NY 10024

(O) (212) 313-7263 (C) (917) 763-9038 (E) @.***


From: Lénárd Szánthó @.> Sent: Friday, February 18, 2022 5:12:28 AM To: ssolo/ALE @.> Cc: Sajesh Singh @.>; Author @.> Subject: Re: [ssolo/ALE] Install error: bpp-phyl required but not found (Issue #27)

EXTERNAL SENDER

Hi, please check it without the -DBUILD_STATIC=OFF as a first trial.

— Reply to this email directly, view it on GitHubhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fssolo%2FALE%2Fissues%2F27%23issuecomment-1044272092&data=04%7C01%7Cssingh%40amnh.org%7C22816300a0b54c2516e508d9f2c72bd5%7Cbe0003e8c6b9496883aeb34586974b76%7C0%7C0%7C637807759535438548%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=a6djjODY%2BYV0Ctw6Qj5NAr7ytoZkwr1ww%2BJ%2FI67574o%3D&reserved=0, or unsubscribehttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAK67S5WWI547G2NG7AF7F5DU3YLQZANCNFSM5OVT4APA&data=04%7C01%7Cssingh%40amnh.org%7C22816300a0b54c2516e508d9f2c72bd5%7Cbe0003e8c6b9496883aeb34586974b76%7C0%7C0%7C637807759535438548%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=7P5apbnJT0rU7O6oIHSECrg0LnXaVrGfM0SRU22cvWM%3D&reserved=0. Triage notifications on the go with GitHub Mobile for iOShttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04%7C01%7Cssingh%40amnh.org%7C22816300a0b54c2516e508d9f2c72bd5%7Cbe0003e8c6b9496883aeb34586974b76%7C0%7C0%7C637807759535438548%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=AR%2BxKzbYZNyuMbG3xVbkIj67eGvQcQysMNgNtyf93yA%3D&reserved=0 or Androidhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04%7C01%7Cssingh%40amnh.org%7C22816300a0b54c2516e508d9f2c72bd5%7Cbe0003e8c6b9496883aeb34586974b76%7C0%7C0%7C637807759535438548%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=3AYrCe1pdIGkSfzBWd62g%2BZBL9cTG0sE9dCtxk3sxTM%3D&reserved=0. You are receiving this because you authored the thread.Message ID: @.***>

drenal commented 2 years ago

Then please provide logs for both the ALE and the 3 bio++ packages installation in order to help you further.

ssgituser commented 2 years ago

Log files as requested.

Ale-CMakeOutput.log Bio-Core-CMakeOutput.log Bio-Phyl-CMakeOutput.log Bio-Seq-CMakeOutput.log

drenal commented 2 years ago

Thanks, let's check ALE's CMakeCache.txt file too, are there the paths correct?

ssgituser commented 2 years ago

Certainly. File attached.

CMakeCache.txt

Does not seem as though the paths are recognized to the BPP libraries/includes:

//Path to a file. bpp-phyl_INCLUDE_DIR:PATH=bpp-phyl_INCLUDE_DIR-NOTFOUND

//Path to a library. bpp-phyl_LIBRARY:FILEPATH=bpp-phyl_LIBRARY-NOTFOUND

drenal commented 2 years ago

Yes, and also the bpp-core and bpp-seq paths are missing, on our (Debian based) machines it's the following:

//Path to a file.
bpp-core_INCLUDE_DIR:PATH=/scratch/local/include

//Path to a library.
bpp-core_LIBRARY:FILEPATH=/scratch/local/lib/libbpp-core.a

//Path to a file.
bpp-phyl_INCLUDE_DIR:PATH=/scratch/local/include

//Path to a library.
bpp-phyl_LIBRARY:FILEPATH=/scratch/local/lib/libbpp-phyl.a

//Path to a file.
bpp-seq_INCLUDE_DIR:PATH=/scratch/local/include

//Path to a library.
bpp-seq_LIBRARY:FILEPATH=/scratch/local/lib/libbpp-seq.a

//Dependencies for the target
exODT_LIB_DEPENDS:STATIC=general;/scratch/local/lib/libbpp-phyl.a;general;/scratch/local/lib/libbpp-seq.a;general;/scratch/local/lib/libbpp-core.a;

According to CMake's documentation, one could try to set these paths in the CMakeCache.txt manually, but because other parameters are missing too (i.e. boost_headers_DIR, and other boost_*), I'm not sure it will be enough for a successful compilation.

Let's try another way, please create a new ALE-build directory (or delete everything in the current one) and then add the debug flag -DCMAKE_FIND_DEBUG_MODE=true to cmake, i.e. on our machine it would be:

cmake -DCMAKE_LIBRARY_PATH=/scratch/local/lib -DCMAKE_INCLUDE_PATH=/scratch/local/include -DCMAKE_FIND_DEBUG_MODE=true -DCMAKE_SYSTEM_PREFIX_PATH=/scratch/local -DCMAKE_INSTALL_PREFIX=/scratch/local ../ALE
ssgituser commented 2 years ago

Tried with the new DEBUG flag and it still failed. Looks like it does search the correct path for the BIO++ library: /usr/local/software/BIO++/lib64/(lib)bpp-phyl(.so|.a)

And the file does exist: ls -al /usr/local/software/BIO++/lib64/libbpp-phyl3.so lrwxrwxrwx 1 root root 17 Feb 17 11:18 /usr/local/software/BIO++/lib64/libbpp-phyl3.so -> libbpp-phyl3.so.1

Cmake output log: CMakeOutput.log

ssgituser commented 2 years ago

Just realized after sending message. I see that cmake is looking for /usr/local/software/BIO++/lib64/libbpp-phyl.so

While I have: /usr/local/software/BIO++/lib64/libbpp-phyl3.so

Is it that I have a too new version of BIO++ installed?

drenal commented 2 years ago

No, ALE supports bio++ v3, but at that time the library didn't get the 3 version-postfix yet.

I've updated the CMakeLists.txt file to search for both bio++ libraries (with and without the 3 postfix).

Please do a git pull and try to recompile, I hope this time it will find the libraries.

ssgituser commented 2 years ago

Seems to be getting further, but now getting the following error:

cmake3 .. -DBUILD_STATIC=OFF -DCMAKE_INCLUDE_PATH=/usr/local/software/BIO++/include/ CMake Deprecation Warning at CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED): Compatibility with CMake < 2.8.12 will be removed from a future version of CMake.

Update the VERSION argument value or use a ... suffix to tell CMake that the project does not need compatibility with older versions.

-- Library bpp-phyl found here: includes : bpp-phyl_INCLUDE_DIR-NOTFOUND library: /usr/local/software/BIO++/lib64/libbpp-phyl3.so -- Library bpp-seq found here: includes : /usr/local/software/BIO++/include library: /usr/local/software/BIO++/lib64/libbpp-seq3.so -- Library bpp-core found here: includes : /usr/local/software/BIO++/include library: /usr/local/software/BIO++/lib64/libbpp-core3.so -- Configuring done CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: bpp-phyl_INCLUDE_DIR used as include directory in directory /usr/local/src/ALE used as include directory in directory /usr/local/src/ALE used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src used as include directory in directory /usr/local/src/ALE/src

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "exODT":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEsample":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEevaluate_undated":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "mlresampler_undated":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEml":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEcount":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEmcmc_undated":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEobserve":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "computeALEcomplexity":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEadd":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "CCPscore":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ls_leaves":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEml_undated":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "ALEprune":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "simulation":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) in src/CMakeLists.txt: Policy CMP0021 is not set: Fatal error on relative paths in INCLUDE_DIRECTORIES target property. Run "cmake --help-policy CMP0021" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

Found relative path while evaluating include directories of "times_undated":

"bpp-phyl_INCLUDE_DIR-NOTFOUND"

This warning is for project developers. Use -Wno-dev to suppress it.

-- Generating done CMake Generate step failed. Build files cannot be regenerated correctly.

drenal commented 2 years ago

includes : bpp-phyl_INCLUDE_DIR-NOTFOUND for some reason the bpp-phyl include files are not found. Are they there? (bpp-core and bpp-seq are there and found).

I would recompile just the bpp-phyl package, maybe something went wrong.

Let's try without the -DBUILD_STATIC flag too for now and the -DCMAKE_LIBRARY_PATH was not set, but the libraries were found, so probably this is not the cause of the problem.

ssgituser commented 2 years ago

No luck same error after rebuilding bpp-phyl package

drenal commented 2 years ago

Hi,

BPP v3 is still under heavy development, so we've decided to only support BPP 2.4.1 (the last stable version of BPP). The master branch represents this state of ALE now, INSTALL.md 's build from source section is updated accordingly.

Alternatively a bppv3 branch was created which supports the BPP v3 in its state in September 2021: https://github.com/ssolo/ALE/tree/bppv3 Please check the https://github.com/ssolo/ALE/blob/bppv3/etc/filesDockerImage/Dockerfile for instructions on how to make the compilation successful with this combination of versions.