Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile error when calling Gerbil "make" #17

Open
mhorlacher opened this issue Aug 4, 2020 · 2 comments
Open

Compile error when calling Gerbil "make" #17

mhorlacher opened this issue Aug 4, 2020 · 2 comments

Comments

@mhorlacher
Copy link

My cmake .. output:

-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler: /home/icb/marc.horlacher/miniconda3/envs/gerbil/bin/x86_64-conda_cos6-linux-gnu-cc
-- Check for working C compiler: /home/icb/marc.horlacher/miniconda3/envs/gerbil/bin/x86_64-conda_cos6-linux-gnu-cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /home/icb/marc.horlacher/miniconda3/envs/gerbil/bin/x86_64-conda_cos6-linux-gnu-c++
-- Check for working CXX compiler: /home/icb/marc.horlacher/miniconda3/envs/gerbil/bin/x86_64-conda_cos6-linux-gnu-c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Boost  found.
-- Found Boost components:
   system;thread;filesystem;regex
-- Found BZip2: /usr/lib64/libbz2.so (found version "1.0.6") 
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - not found
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.8") 
-- Found Threads: TRUE  
CUDA_TOOLKIT_ROOT_DIR not found or specified
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) 
-- Build type: Release
-- Configuring done
CMake Warning at CMakeLists.txt:100 (add_executable):
  Cannot generate a safe runtime search path for target gerbil because files
  in some directories may conflict with libraries in implicit directories:

    runtime library [libz.so.1] in /usr/lib64 may be hidden by files in:
      /home/icb/marc.horlacher/miniconda3/envs/gerbil/lib

  Some of these libraries may not be found correctly.


-- Generating done
-- Build files have been written to: /home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/build

And my make output:

Scanning dependencies of target toFasta
[  5%] Building CXX object CMakeFiles/toFasta.dir/src/gerbil/toFasta.cpp.o
[ 11%] Linking CXX executable toFasta
[ 11%] Built target toFasta
Scanning dependencies of target gerbil
[ 17%] Building CXX object CMakeFiles/gerbil.dir/src/gerbil/Application.cpp.o
In file included from /home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/types.h:27:0,
                 from /home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/SyncQueue.h:25,
                 from /home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/FastReader.h:26,
                 from /home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/Application.h:26,
                 from /home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/Application.cpp:8:
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:50:2: error: '__syscall_slong_t' does not name a type
  __syscall_slong_t _nsec;
  ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In constructor 'gerbil::StopWatch::StopWatch(clockid_t)':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:54:17: error: class 'gerbil::StopWatch' does not have any field named '_nsec'
    _mode(mode), _nsec(0), _sec(0) {
                 ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In constructor 'gerbil::StopWatch::StopWatch()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:57:27: error: class 'gerbil::StopWatch' does not have any field named '_nsec'
    _mode(CLOCK_REALTIME), _nsec(0), _sec(0) {
                           ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'void gerbil::StopWatch::start()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:65:3: error: '_nsec' was not declared in this scope
   _nsec = 0;
   ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'void gerbil::StopWatch::stop()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:70:3: error: '_nsec' was not declared in this scope
   _nsec += _end.tv_nsec - _start.tv_nsec;
   ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'void gerbil::StopWatch::hold()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:75:3: error: '_nsec' was not declared in this scope
   _nsec += _end.tv_nsec - _start.tv_nsec;
   ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'double gerbil::StopWatch::get_s()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:82:27: error: '_nsec' was not declared in this scope
   return _sec + ((double) _nsec / 1000000000);
                           ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: At global scope:
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:100:2: error: '__syscall_slong_t' does not name a type
  __syscall_slong_t _nsec;
  ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In constructor 'gerbil::StackStopWatch::StackStopWatch(clockid_t)':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:105:17: error: class 'gerbil::StackStopWatch' does not have any field named '_nsec'
    _mode(mode), _nsec(0), _sec(0), _inProgress(false) {
                 ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In constructor 'gerbil::StackStopWatch::StackStopWatch()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:108:27: error: class 'gerbil::StackStopWatch' does not have any field named '_nsec'
    _mode(CLOCK_REALTIME), _nsec(0), _sec(0), _inProgress(false) {
                           ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'void gerbil::StackStopWatch::start()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:114:3: error: '_nsec' was not declared in this scope
   _nsec = 0;
   ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'void gerbil::StackStopWatch::stop()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:121:3: error: '_nsec' was not declared in this scope
   _nsec += _end.tv_nsec - _start.tv_nsec;
   ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'void gerbil::StackStopWatch::hold()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:128:3: error: '_nsec' was not declared in this scope
   _nsec += _end.tv_nsec - _start.tv_nsec;
   ^
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h: In member function 'double gerbil::StackStopWatch::get_s()':
/home/icb/marc.horlacher/projects/DeepCLIP/software/gerbil/src/gerbil/../../include/gerbil/debug.h:136:27: error: '_nsec' was not declared in this scope
   return _sec + ((double) _nsec / 1000000000);
                           ^
make[2]: *** [CMakeFiles/gerbil.dir/build.make:63: CMakeFiles/gerbil.dir/src/gerbil/Application.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:110: CMakeFiles/gerbil.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

What's going wrong here?

@srechner
Copy link
Collaborator

In my opinion, the problems starts in the cmake output:

  Cannot generate a safe runtime search path for target gerbil because files
  in some directories may conflict with libraries in implicit directories:

    runtime library [libz.so.1] in /usr/lib64 may be hidden by files in:
      /home/icb/marc.horlacher/miniconda3/envs/gerbil/lib

  Some of these libraries may not be found correctly.

It seems that the directory minconda3/envs/gerbil/lib is hiding essential system libraries, which can afterwards not be found during the linking process.

Unfortunately, I do not know how to fix this problem as I have no experience with conda environments. May this thread be helpful?

@mhorlacher
Copy link
Author

Thanks for taking your time @srechner , masking the system paths was intentional as I'm not super-user on our servers and couldn't install the required libraries otherwise. I still couldn't figure out how to solve the above problem, it probably due to the server running on Redhat..

Anyways, I've managed to statically compile Gerbil locally and can now use it on our servers without any problems!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants