dnanexus-rnd / GLnexus

Scalable gVCF merging and joint variant calling for population sequencing projects
Apache License 2.0
154 stars 38 forks source link

can't compile GLnexus on RHEL 7.9 (LZ4 errors) #273

Open ponomarevsy opened 2 years ago

ponomarevsy commented 2 years ago
» cmake -Dtest=ON . && make -j8 && ctest -V
...
[100%] Linking CXX executable unit_tests
./util/compression.h:1149: error: undefined reference to 'LZ4_createStreamDecode'
./util/compression.h:1155: error: undefined reference to 'LZ4_decompress_safe_continue'
./util/compression.h:1158: error: undefined reference to 'LZ4_freeStreamDecode'
./util/compression.h:1152: error: undefined reference to 'LZ4_setStreamDecode'
./util/compression.h:1149: error: undefined reference to 'LZ4_createStreamDecode'
./util/compression.h:1152: error: undefined reference to 'LZ4_setStreamDecode'
./util/compression.h:1155: error: undefined reference to 'LZ4_decompress_safe_continue'
./util/compression.h:1158: error: undefined reference to 'LZ4_freeStreamDecode'
./util/compression.h:1210: error: undefined reference to 'LZ4_compressBound'
./util/compression.h:1221: error: undefined reference to 'LZ4_createStreamHC'
./util/compression.h:1222: error: undefined reference to 'LZ4_resetStreamHC'
./util/compression.h:1227: error: undefined reference to 'LZ4_loadDictHC'
./util/compression.h:1232: error: undefined reference to 'LZ4_compress_HC_continue'
./util/compression.h:1239: error: undefined reference to 'LZ4_freeStreamHC'
./util/compression.h:1072: error: undefined reference to 'LZ4_compressBound'
./util/compression.h:1077: error: undefined reference to 'LZ4_createStream'
./util/compression.h:1085: error: undefined reference to 'LZ4_compress_fast_continue'
./util/compression.h:1092: error: undefined reference to 'LZ4_freeStream'
./util/compression.h:1080: error: undefined reference to 'LZ4_loadDict'
./util/compression.h:1072: error: undefined reference to 'LZ4_compressBound'
./util/compression.h:1077: error: undefined reference to 'LZ4_createStream'
./util/compression.h:1085: error: undefined reference to 'LZ4_compress_fast_continue'
./util/compression.h:1092: error: undefined reference to 'LZ4_freeStream'
./util/compression.h:1210: error: undefined reference to 'LZ4_compressBound'
./util/compression.h:1221: error: undefined reference to 'LZ4_createStreamHC'
./util/compression.h:1222: error: undefined reference to 'LZ4_resetStreamHC'
./util/compression.h:1227: error: undefined reference to 'LZ4_loadDictHC'
./util/compression.h:1232: error: undefined reference to 'LZ4_compress_HC_continue'
./util/compression.h:1239: error: undefined reference to 'LZ4_freeStreamHC'
./util/compression.h:1080: error: undefined reference to 'LZ4_loadDict'
collect2: error: ld returned 1 exit status
make[2]: *** [unit_tests] Error 1
make[1]: *** [CMakeFiles/unit_tests.dir/all] Error 2
make: *** [all] Error 2

» module list                                                          
Currently Loaded Modulefiles:
  1) EasyBuild/4.4.2                  6) cmake/3.14.3                    11) lz4/1.9.3-GCCcore-10.3.0
  2) uge/8.6.15                       7) bzip2/1.0.8-GCCcore-10.3.0      12) zstd/1.4.9-GCCcore-10.3.0
  3) GCCcore/10.3.0                   8) xz/5.2.5-GCCcore-10.3.0         13) snappy/1.1.8-GCCcore-10.3.0
  4) zlib/1.2.11-GCCcore-10.3.0       9) gzip/1.10-GCCcore-10.3.0
  5) binutils/2.36.1-GCCcore-10.3.0  10) XZ/5.2.5-GCCcore-10.3.0

» ls /path/software/lz4/1.9.3-GCCcore-10.3.0/lib 
liblz4.a  liblz4.so  liblz4.so.1  liblz4.so.1.9.3  pkgconfig

So the library is there but it is not seen by the linker. Please help!

ponomarevsy commented 2 years ago

A quick update on this issue, - I ended up pulling Docker container with Singularity (in HPC environment):

singularity pull glnexus_cli.sif docker://ghcr.io/dnanexus-rnd/glnexus:v1.4.1