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

Fail with Cmake BUILD_TESTING=ON #57

Open
eroberson opened this issue Jun 15, 2015 · 4 comments
Open

Fail with Cmake BUILD_TESTING=ON #57

eroberson opened this issue Jun 15, 2015 · 4 comments
Labels

Comments

@eroberson
Copy link

Description of error

Pulled source from GitHub. Attempted to build on Ubuntu 12.04.5 LTS. Used the build testing, and the testing did not show errors. However, at the end unittests it claims to not find HDF5, even though it shows HDF5 as found.

Recreating the issue

Command

git clone http://github.com/pachterlab/kallisto
cd kallisto
mkdir build
cd build
cmake -DBUILD_TESTING=ON ..

Output

-- The C compiler identification is GNU 5.1.0
-- The CXX compiler identification is GNU 5.1.0
-- Check for working C compiler: /home/eli/bin/gcc_out/bin/gcc
-- Check for working C compiler: /home/eli/bin/gcc_out/bin/gcc -- 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/eli/bin/gcc_out/bin/c++
-- Check for working CXX compiler: /home/eli/bin/gcc_out/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
shared build
-- Looking for include file pthread.h
-- Looking for include file 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
-- Found HDF5: /home/eli/src/hdf5-1.8.15-patch1/hdf5/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/librt.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.3.4")
-- Found Git: /usr/bin/git (found version "1.7.9.5")
CMake Error at unit_tests/CMakeLists.txt:22 (message):
  HDF5 not found.  Required to output files

System details

Ubuntu 12.04.5 LTS
cmake v3.2.3
gcc v5.1.0
hdf5 v1.8.15-patch1

Attempted to download the precompiled Ubuntu binary, but the link appears to be dead. Unsure what is triggering the error, as HDF5 is listed as found right before the unittest says it can't be found.

@pimentel
Copy link
Contributor

This is quite bizarre. I'll look into it later this week.

In any case, the unit tests are pretty dysfunctional right now anyway so I would suggest building without them. Does it build fine without the tests?

Thanks,

Harold

@eroberson
Copy link
Author

No build testing

cd build
rm -fr *
cmake ..

output

-- The C compiler identification is GNU 5.1.0
-- The CXX compiler identification is GNU 5.1.0
-- Check for working C compiler: /home/eli/bin/gcc_out/bin/gcc
-- Check for working C compiler: /home/eli/bin/gcc_out/bin/gcc -- 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/eli/bin/gcc_out/bin/c++
-- Check for working CXX compiler: /home/eli/bin/gcc_out/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
shared build
-- Looking for include file pthread.h
-- Looking for include file 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
-- Found HDF5: /home/eli/src/hdf5-1.8.15-patch1/hdf5/lib/libhdf5.so;/usr/lib/x86                                                                              _64-linux-gnu/librt.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-g                                                                              nu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.3.4")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/eli/src/kallisto/build

running make

make

make output

Scanning dependencies of target kallisto_core
[  7%] Building CXX object src/CMakeFiles/kallisto_core.dir/weights.cpp.o
[ 14%] Building CXX object src/CMakeFiles/kallisto_core.dir/MinCollector.cpp.o
[ 21%] Building CXX object src/CMakeFiles/kallisto_core.dir/hash.cpp.o
[ 28%] Building CXX object src/CMakeFiles/kallisto_core.dir/common.cpp.o
[ 35%] Building CXX object src/CMakeFiles/kallisto_core.dir/main.cpp.o
[ 42%] Building CXX object src/CMakeFiles/kallisto_core.dir/H5Writer.cpp.o
[ 50%] Building CXX object src/CMakeFiles/kallisto_core.dir/Kmer.cpp.o
[ 57%] Building CXX object src/CMakeFiles/kallisto_core.dir/KmerIndex.cpp.o
[ 64%] Building CXX object src/CMakeFiles/kallisto_core.dir/PlaintextWriter.cpp.                                                                              o
[ 71%] Building CXX object src/CMakeFiles/kallisto_core.dir/KmerIterator.cpp.o
[ 78%] Building CXX object src/CMakeFiles/kallisto_core.dir/ProcessReads.cpp.o
[ 85%] Building CXX object src/CMakeFiles/kallisto_core.dir/Bootstrap.cpp.o
[ 92%] Building CXX object src/CMakeFiles/kallisto_core.dir/h5utils.cpp.o
Linking CXX static library libkallisto_core.a
[ 92%] Built target kallisto_core
Scanning dependencies of target kallisto
[100%] Building CXX object src/CMakeFiles/kallisto.dir/main.cpp.o
Linking CXX executable kallisto
[100%] Built target kallisto

testing executable

cd src
./kallisto

executable output

kallisto 0.42.2

Usage: kallisto <CMD> [arguments] ..

Where <CMD> can be one of:

    index         Builds a kallisto index
    quant         Runs the quantification algorithm
    h5dump        Converts HDF5-formatted results to plaintext
    version       Prints version information

Running kallisto <CMD> without arguments prints usage information for <CMD>

This at least appears to be a spurious error generated during the unit testing with cmake. I'll let you know if any weirdness pops up during tests.

@pimentel
Copy link
Contributor

OK. I've tracked down the bug. It doesn't affect the main binary, but it's going to require some restructuring of the HDF5 stuff in the src/CMakeLists.txt. I think for now I'm going to take the test notes out of INSTALL.md since the tests are defunct right now anyway. We're fixing them soon, though. Probably in the next version.

Thanks,

Harold

@eroberson
Copy link
Author

Seems reasonable. I've been running test alignments with the main binary and have yet to experience any issues.

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

No branches or pull requests

2 participants