channotation / chap

CHAP is a tool for the functional annotation of ion channel structures:
http://www.channotation.org
Other
18 stars 10 forks source link

Error during installation of chap - possibly related to LAPACK #6

Closed eric-jm-lang closed 5 years ago

eric-jm-lang commented 5 years ago

Hello,

I am trying to install chap on an Ubuntu 16.04 computer. I have a fresh build of Gromacs 2018 and installed the dependancies following the instruction provided in the chap documentation, namely: sudo apt-get install libblas-dev liblapacke-dev libatlas-base-dev

Here is the result of cmake:

-- The CXX compiler identification is GNU 5.4.0
-- The C compiler identification is GNU 5.4.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Boost version: 1.58.0
-- Found LAPACKE: /usr/include
-- Found GROMACS: 2018.7
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /home/el14718/Software/chap-version_0_9_1/build

And here is the error following make:

[...]
[ 42%] Building CXX object CMakeFiles/chap.dir/src/statistics/weighted_kernel_density_estimator.cpp.o
[ 43%] Building CXX object CMakeFiles/chap.dir/src/statistics/kernel_density_estimator.cpp.o
[ 43%] Building CXX object CMakeFiles/chap.dir/config/version.cpp.o
[ 44%] Building CXX object CMakeFiles/chap.dir/config/config.cpp.o
[ 45%] Linking CXX executable chap
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sggev3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sbdsvdx_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cgesvj_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dgetrf2_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dpotrf2_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sggsvp3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zgges3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cgesvdx_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zggev3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dgesvdx_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cggsvp3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zggsvp3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sgges3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sgesvdx_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zgesvdx_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dbdsvdx_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cgghd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dggsvp3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cggev3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `spotrf2_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sggsvd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zpotrf2_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dgghd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sgetrf2_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zgghd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cgejsv_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dggsvd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cpotrf2_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cggsvd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dggev3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zgejsv_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `sgghd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zggsvd3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cgetrf2_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `cgges3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zgesvj_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `dgges3_'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/liblapacke.so: undefined reference to `zgetrf2_'
collect2: error: ld returned 1 exit status
CMakeFiles/chap.dir/build.make:1374: recipe for target 'chap' failed
make[2]: *** [chap] Error 1
CMakeFiles/Makefile2:392: recipe for target 'CMakeFiles/chap.dir/all' failed
make[1]: *** [CMakeFiles/chap.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2

Do you have any idea what the problem could be? Do you know how it could be fixed? Is it a problem relating the the latest version of Lapack?

Many thanks in advance for your help!

Eric

eric-jm-lang commented 5 years ago

I found the problem looking at the installation procedure on Github, I needed to install the following: sudo apt-get install libblas-dev libatlas-base-dev libopenblas-dev liblapacke-dev I didn't have libopenblas-dev previously.

Note that this library is not mentioned in https://www.channotation.org/docs/home/, you might want to update this.

Cheers,

Eric

Inniag commented 5 years ago

Thanks for pointing out that libopenblas-dev is missing from the guide on the website. This library is not needed on Ubuntu 14.04 (where it is included in libatlas I think), but it is required from Ubuntu 16.04 onwards.

I assume that your problem is solved and that I can close this issue?

eric-jm-lang commented 5 years ago

I see, I didn't know about this difference between 16.04 and 14.04. Yes it is solved, thanks.