soedinglab / CCMpred

Protein Residue-Residue Contacts from Correlated Mutations predicted quickly and accurately.
http://www.ncbi.nlm.nih.gov/pubmed/25064567
GNU Affero General Public License v3.0
107 stars 25 forks source link

problems of CCMpred compiling #41

Open ylx0925 opened 1 year ago

ylx0925 commented 1 year ago

I have met some problems when I compile CCMpred on Ubuntu 22.04.2 LTS. Have you @sseemayer got any idea what the problem is? Thanks in advance! My cmake and make outputs are below.If someone knows how to solve it,can you teach me? I am really not able to sove this problem.The problems of cmake are warnings,while the problems of make are errors.

$> cmake .
-- MsgPack was not found. Make sure MSGPACK_LIBRARY and MSGPACK_INCLUDE_DIR are set.
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
CMake Warning (dev) at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (LibJansson)
  does not match the name of the calling package (Jansson).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake_lib/FindJansson.cmake:21 (find_package_handle_standard_args)
  CMakeLists.txt:87 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Could NOT find LibJansson (missing: JANSSON_LIBRARY JANSSON_INCLUDE_DIR)
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
CMake Warning (dev) at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (LibUUID)
  does not match the name of the calling package (UUID).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake_lib/FindUUID.cmake:20 (find_package_handle_standard_args)
  CMakeLists.txt:96 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Could NOT find LibUUID (missing: UUID_LIBRARY UUID_INCLUDE_DIR)
-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Deprecation Warning at lib/libconjugrad/CMakeLists.txt:11 (cmake_policy):
  The OLD behavior for policy CMP0022 will be removed from a future version
  of CMake.
 The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.
-- Configuring done
CMake Warning (dev) in CMakeLists.txt:
  Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
  empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
  for policy details.  Use the cmake_policy command to set the policy and
  suppress this warning.
CUDA_ARCHITECTURES is empty for target "ccmpred".
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) in CMakeLists.txt:
  Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
  empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
  for policy details.  Use the cmake_policy command to set the policy and
  suppress this warning.

  CUDA_ARCHITECTURES is empty for target "ccmpred".
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) in lib/libconjugrad/CMakeLists.txt:
  Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
  empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
  for policy details.  Use the cmake_policy command to set the policy and
  suppress this warning.
CUDA_ARCHITECTURES is empty for target "conjugrad".
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) in lib/libconjugrad/CMakeLists.txt:
  Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
  empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
  for policy details.  Use the cmake_policy command to set the policy and
  suppress this warning.

  CUDA_ARCHITECTURES is empty for target "conjugrad".
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) in lib/libconjugrad/CMakeLists.txt:
  Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
  empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
  for policy details.  Use the cmake_policy command to set the policy and
  suppress this warning.

  CUDA_ARCHITECTURES is empty for target "rosenbrock".
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) in lib/libconjugrad/CMakeLists.txt:
  Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
  empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
  for policy details.  Use the cmake_policy command to set the policy and
  suppress this warning.
CUDA_ARCHITECTURES is empty for target "polynomial".
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) in lib/libconjugrad/CMakeLists.txt:
  Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
  empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
  for policy details.  Use the cmake_policy command to set the policy and
  suppress this warning.

  CUDA_ARCHITECTURES is empty for target "sphere".
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Generating done
-- Build files have been written to: /home/ylx/CCMpred
$> make
Consolidate compiler generated dependencies of target conjugrad
[  5%] Building C object lib/libconjugrad/CMakeFiles/conjugrad.dir/src/conjugrad.c.o
In file included from /home/ylx/CCMpred/lib/libconjugrad/src/conjugrad.c:4:
/home/ylx/CCMpred/lib/libconjugrad/include/conjugrad.h:21:15: error: conflicting types for ‘sqrtf’; have ‘float(double)’
   21 | #define fsqrt sqrtf
      |               ^~~~~
In file included from /home/ylx/CCMpred/lib/libconjugrad/src/conjugrad.c:4:
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:143:1: note: previous declaration of ‘sqrtf’ with type ‘float(float)’
  143 | __MATHCALL (sqrt,, (_Mdouble_ __x));
      | ^~~~~~~~~~
make[2]: *** [lib/libconjugrad/CMakeFiles/conjugrad.dir/build.make:76: lib/libconjugrad/CMakeFiles/conjugrad.dir/src/conjugrad.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:129: lib/libconjugrad/CMakeFiles/conjugrad.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
AllisterCrow commented 10 months ago

I have encountered the same error with make.

Is there any fix for this?

Any help is much appreciated.

Best wishes,

lm-jkominek commented 8 months ago

Hi, not sure if you still care, but I also stumbled upon this problem. What worked for me was opening the file "include/conjugrad.h" and simply commenting out the offending line by adding // in front of it.

AllisterCrow commented 8 months ago

@lm-jkominek

This does indeed fix my issue. (And, yes I do still care!)

Thank you ever so much for your help!