ncbi / ngs-tools

Other
103 stars 25 forks source link

vdb-search.cpp:(.text+0x21d7): undefined reference #5

Closed mr--white closed 3 years ago

mr--white commented 7 years ago

attempting to build ngs-tools. I use the following configure command from a clone of the ngs-tools repo.

$ ./configure --prefix /dev/shm/packages/ngs-tools-2.8.2 --build-prefix=/dev/shm/ncbi/build --with-ngs-sdk-prefix=/usr/local/packages/ngs-sdk-1.3.0 --with-ncbi-vdb-build=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb --with-ncbi-vdb-sources=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master
Configuring NGS-TOOLS package
checking system type... Linux
checking OS distributor... CentOS
checking machine architecture... x86_64
checking for supported architecture... x86_64 (64 bits) is supported
checking for supported OS... Linux (linux) is supported
checking for supported tool chain... gcc tool chain is supported
checking for g++... yes
checking whether gcc accepts -Wno-array-bounds... yes
checking whether g++ accepts -static-libstdc++... yes
checking for ngs-sdk package...
        includes... /usr/local/packages/ngs-sdk-1.3.0
        libraries... /usr/local/packages/ngs-sdk-1.3.0/lib64
includes: /usr/local/packages/ngs-sdk-1.3.0/include
libraries: /usr/local/packages/ngs-sdk-1.3.0/lib64
checking for ncbi-vdb package source files and build results...
        includes... /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master
        libraries... /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb/linux/gcc/x86_64/rel/ilib
includes: /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/interfaces
libraries: /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb/linux/gcc/x86_64/rel/lib
ilibraries: /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb/linux/gcc/x86_64/rel/ilib

configure: creating 'build/ld.linux.exe_cmd.sh'
configure: creating 'build/Makefile.config.linux.x86_64'
configure: creating 'Makefile.config'
configure: creating 'reconfigure'
build type: release
build prefix: /dev/shm/ncbi/build/ngs-tools
build output path: /dev/shm/ncbi/build/ngs-tools/linux/gcc/x86_64/rel
includedir: /dev/shm/packages/ngs-tools-2.8.2/include
bindir: /dev/shm/packages/ngs-tools-2.8.2/bin
libdir: /dev/shm/packages/ngs-tools-2.8.2/lib
CC = gcc -c
CPP = g++
configured with: "'--prefix' '/dev/shm/packages/ngs-tools-2.8.2' '--build-prefix=/dev/shm/ncbi/build' '--with-ngs-sdk-prefix=/usr/local/packages/ngs-sdk-1.3.0' '--with-ncbi-vdb-build=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb' '--with-ncbi-vdb-sources=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master'"

Make errors out with the following...

$ make
...
vdb-search.cpp:(.text+0x21d7): undefined reference to `ReferenceMatchIterator::ReferenceMatchIterator(SearchBlock::Factory&, std::string const&, std::vector<ReferenceSpec, std::allocator<ReferenceSpec> > const&, bool)'
collect2: error: ld returned 1 exit status
make[2]: *** [/dev/shm/ncbi/build/ngs-tools/linux/gcc/x86_64/rel/bin/sra-search] Error 1
make[2]: Leaving directory `/dev/shm/ncbi/ngs-tools/tools/sra-search'
make[1]: *** [std] Error 2
make[1]: Leaving directory `/dev/shm/ncbi/ngs-tools/tools/sra-search'
make: *** [tools/sra-search] Error 2

I'm running on CentOS6.7.

aboshkin commented 7 years ago

Hello,

Starting with 2.8.2, we have been using CMake to build ngs-tools. Here is the build sequence:

configure/build for the first time:

cd /dev/shm/ncbi/ngs-tools/build/cmake ./makerelease.sh # or ./makedebug for debug build # for subsequent builds w/o reconfiguration: cd /dev/shm/ncbi/ngs-tools/build/cmake/Release # or …/Debug for debug build make Sorry for the inconvenience! Starting from the next release, the traditional way (./configure && make) will be available again Thank you, Anatoly From: Ryan B. [mailto:notifications@github.com] Sent: Friday, June 23, 2017 6:36 PM To: ncbi/ngs-tools Cc: Subscribed Subject: [ncbi/ngs-tools] vdb-search.cpp:(.text+0x21d7): undefined reference (#5) attempting to build ngs-tools. I use the following configure command from a clone of the ngs-tools repo. $ ./configure --prefix /dev/shm/packages/ngs-tools-2.8.2 --build-prefix=/dev/shm/ncbi/build --with-ngs-sdk-prefix=/usr/local/packages/ngs-sdk-1.3.0 --with-ncbi-vdb-build=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb --with-ncbi-vdb-sources=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master Configuring NGS-TOOLS package checking system type... Linux checking OS distributor... CentOS checking machine architecture... x86_64 checking for supported architecture... x86_64 (64 bits) is supported checking for supported OS... Linux (linux) is supported checking for supported tool chain... gcc tool chain is supported checking for g++... yes checking whether gcc accepts -Wno-array-bounds... yes checking whether g++ accepts -static-libstdc++... yes checking for ngs-sdk package... includes... /usr/local/packages/ngs-sdk-1.3.0 libraries... /usr/local/packages/ngs-sdk-1.3.0/lib64 includes: /usr/local/packages/ngs-sdk-1.3.0/include libraries: /usr/local/packages/ngs-sdk-1.3.0/lib64 checking for ncbi-vdb package source files and build results... includes... /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master libraries... /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb/linux/gcc/x86_64/rel/ilib includes: /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/interfaces libraries: /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb/linux/gcc/x86_64/rel/lib ilibraries: /usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb/linux/gcc/x86_64/rel/ilib configure: creating 'build/ld.linux.exe_cmd.sh' configure: creating 'build/Makefile.config.linux.x86_64' configure: creating 'Makefile.config' configure: creating 'reconfigure' build type: release build prefix: /dev/shm/ncbi/build/ngs-tools build output path: /dev/shm/ncbi/build/ngs-tools/linux/gcc/x86_64/rel includedir: /dev/shm/packages/ngs-tools-2.8.2/include bindir: /dev/shm/packages/ngs-tools-2.8.2/bin libdir: /dev/shm/packages/ngs-tools-2.8.2/lib CC = gcc -c CPP = g++ configured with: "'--prefix' '/dev/shm/packages/ngs-tools-2.8.2' '--build-prefix=/dev/shm/ncbi/build' '--with-ngs-sdk-prefix=/usr/local/packages/ngs-sdk-1.3.0' '--with-ncbi-vdb-build=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master/builddir/ncbi-vdb' '--with-ncbi-vdb-sources=/usr/local/src/ncbi-vdb/ncbi-vdb-2.8.2/rhel6x86_64/ncbi-vdb-master'" Make errors out with the following... $ make ... vdb-search.cpp:(.text+0x21d7): undefined reference to `ReferenceMatchIterator::ReferenceMatchIterator(SearchBlock::Factory&, std::string const&, std::vector > const&, bool)' collect2: error: ld returned 1 exit status make[2]: *** [/dev/shm/ncbi/build/ngs-tools/linux/gcc/x86_64/rel/bin/sra-search] Error 1 make[2]: Leaving directory `/dev/shm/ncbi/ngs-tools/tools/sra-search' make[1]: *** [std] Error 2 make[1]: Leaving directory `/dev/shm/ncbi/ngs-tools/tools/sra-search' make: *** [tools/sra-search] Error 2 I'm running on CentOS6.7. — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.