jhhung / PEAT

An ultra fast and accurate paired-end adapter trimmer that needs no a priori adapter sequences.
Other
22 stars 7 forks source link

main.cpp: undefined reference to `IhandlerFactory<Fastq, std::tuple #34

Open tseemann opened 5 years ago

tseemann commented 5 years ago
2019-08-27T23:29:52.0844166Z [100%] Linking CXX executable bin/PEAT
2019-08-27T23:29:52.0844932Z /home/linuxbrew/.linuxbrew/Cellar/cmake/3.15.2/bin/cmake -E cmake_link_script CMakeFiles/bin/PEAT.dir/link.txt --verbose=1
2019-08-27T23:29:52.0846403Z /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/shims/linux/super/g++-5  -Ofast -std=c++11 -DNDEBUG  -rdynamic CMakeFiles/bin/PEAT.dir/src/main.cpp.o  -o bin/PEAT -lboost_date_time-mt -lboost_filesystem-mt -lboost_system-mt -lboost_serialization-mt -lboost_system-mt -lboost_filesystem-mt -lboost_regex-mt -lboost_thread-mt -lpthread -lboost_iostreams-mt -lboost_program_options-mt -lboost_chrono-mt -lboost_atomic-mt -lz src/ThreadPool/libthread.a src/iohandler/ihandler/IhandlerFactory.a -lboost_serialization-mt -lboost_regex-mt -lboost_thread-mt -lpthread -lboost_iostreams-mt -lboost_program_options-mt -lboost_chrono-mt -lboost_atomic-mt -lz src/ThreadPool/libthread.a src/iohandler/ihandler/IhandlerFactory.a 
2019-08-27T23:29:52.0847714Z CMakeFiles/bin/PEAT.dir/src/main.cpp.o: In function `paired_end::main(int, char**)':
2019-08-27T23:29:52.0851317Z main.cpp:(.text.startup+0x161d): undefined reference to `IhandlerFactory<Fastq, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::get_ihandler_read(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::map<int, std::vector<Fastq<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::allocator<Fastq<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > >, std::less<int>, std::allocator<std::pair<int const, std::vector<Fastq<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::allocator<Fastq<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > > > >&)'
PhoebeWangintw commented 5 years ago

@tseemann Thanks for reporting this issue. However, I could successfully build PEAT on our computer. The environment of our computer is Ubuntu 18.04. Could you tell me more details? (eg. environment, the steps you followed)

tseemann commented 5 years ago

This is for packaging under Conda and Linuxbrew. What version g++ compilers and boost have you tested it under?

PhoebeWangintw commented 5 years ago

boost version is 1.65.1 and g++ version is 8.2 Maybe I found the problem. Could you delete libIhandlerFactory.a and libthread.a under build directory and try to build again?