Open pwaltman opened 5 years ago
Are you able to build freebayes standalone?
On Tue, Jan 22, 2019, 20:55 Peter Waltman <notifications@github.com wrote:
I've tried compiling speedseq on 2 separate machines, and in both cases, the compilation step fails during the compilation of freeBayes. Here's the relevant error message log:
$ make
... compilation output ...
[ 94%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘bool BamTools::ResolveTool::ReadNamesFileReader::Read(std::map<std::__cxx11::basic_string
, ReadGroupResolver>&)’: /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:415:74: error: no matching function for call to ‘make_pair<std::cxx11::string, bool>(gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::basic_string
> >::value_type&, bool)’ resolver.ReadNames.insert( make_pair<string,bool>(fields[1], true) ) ; ^
In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
from /usr/include/c++/7/bits/char_traits.h:39, from /usr/include/c++/7/string:40, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_tool.h:14, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.h:13, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:10:
/usr/include/c++/7/bits/stl_pair.h:519:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::decay_and_strip<_Tp>::type, typename std::decay_and_strip<_T2>::type> std::make_pair(_T1&&, _T2&&)
make_pair(_T1&& __x, _T2&& __y) ^~~~~~~~~
/usr/include/c++/7/bits/stl_pair.h:519:5: note: template argument deduction/substitution failed:
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:415:74: note: cannot convert ‘fields.std::vector<std::cxx11::basic_string
>::operator’ (type ‘__gnu_cxx:: alloc_traits<std::allocator<std::cxx11::basic_string> >::value_type {aka std:: cxx11::basic_string}’) to type ‘std::__cxx11::basic_string &&’ resolver.ReadNames.insert( make_pair<string,bool>(fields[1], true) ) ; ^
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘bool BamTools::ResolveTool::StatsFileReader::ParseReadGroupLine(const string&, std::map<std::__cxx11::basic_string
, ReadGroupResolver>&)’: /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:612:75: error: no matching function for call to ‘make_pair<std::__cxx11::string, ReadGroupResolver>(const string&, ReadGroupResolver&)’
readGroups.insert( make_pair<string, ReadGroupResolver>(name, resolver) ); ^
In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
from /usr/include/c++/7/bits/char_traits.h:39, from /usr/include/c++/7/string:40, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_tool.h:14, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.h:13, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:10:
/usr/include/c++/7/bits/stl_pair.h:519:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::decay_and_strip<_Tp>::type, typename std::decay_and_strip<_T2>::type> std::make_pair(_T1&&, _T2&&)
make_pair(_T1&& __x, _T2&& __y) ^~~~~~~~~
/usr/include/c++/7/bits/stl_pair.h:519:5: note: template argument deduction/substitution failed:
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:612:61: note: cannot convert ‘name’ (type ‘const string {aka const std::__cxx11::basic_string
}’) to type ‘std::__cxx11::basic_string &&’ readGroups.insert( make_pair<string, ReadGroupResolver>(name, resolver) ); ^~~~
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘bool BamTools::ResolveTool::ResolveToolPrivate::MakeStats()’:
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:1019:93: error: no matching function for call to ‘make_pair<std::cxx11::string, bool>(std::cxx11::string&, const bool&)’
else resolver.ReadNames.insert( make_pair<string, bool>(al.Name, isCurrentMateUnique) ); ^
In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
from /usr/include/c++/7/bits/char_traits.h:39, from /usr/include/c++/7/string:40, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_tool.h:14, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.h:13, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:10:
/usr/include/c++/7/bits/stl_pair.h:519:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::decay_and_strip<_Tp>::type, typename std::decay_and_strip<_T2>::type> std::make_pair(_T1&&, _T2&&)
make_pair(_T1&& __x, _T2&& __y) ^~~~~~~~~
/usr/include/c++/7/bits/stl_pair.h:519:5: note: template argument deduction/substitution failed:
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:1019:68: note: cannot convert ‘al.BamTools::BamAlignment::Name’ (type ‘std::cxx11::string {aka std::cxx11::basic_string
}’) to type ‘std::__cxx11::basic_string &&’ else resolver.ReadNames.insert( make_pair<string, bool>(al.Name, isCurrentMateUnique) ); ~~~^~~~
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘void BamTools::ResolveTool::ResolveToolPrivate::ParseHeader(const BamTools::SamHeader&)’:
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:1051:93: error: no matching function for call to ‘make_pair<std::__cxx11::string, ReadGroupResolver>(const string&, ReadGroupResolver)’
m_readGroups.insert( make_pair<string, ReadGroupResolver>(rg.ID, ReadGroupResolver()) ); ^
In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
from /usr/include/c++/7/bits/char_traits.h:39, from /usr/include/c++/7/string:40, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_tool.h:14, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.h:13, from /home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:10:
/usr/include/c++/7/bits/stl_pair.h:519:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::decay_and_strip<_Tp>::type, typename std::decay_and_strip<_T2>::type> std::make_pair(_T1&&, _T2&&)
make_pair(_T1&& __x, _T2&& __y) ^~~~~~~~~
/usr/include/c++/7/bits/stl_pair.h:519:5: note: template argument deduction/substitution failed:
/home/waltman/bin/speedseq/src/freebayes/bamtools/src/toolkit/bamtools_resolve.cpp:1051:70: note: cannot convert ‘rg.BamTools::SamReadGroup::ID’ (type ‘const string {aka const std::__cxx11::basic_string
}’) to type ‘std::__cxx11::basic_string &&’ m_readGroups.insert( make_pair<string, ReadGroupResolver>(rg.ID, ReadGroupResolver()) ); ~~~^~
src/toolkit/CMakeFiles/bamtools_cmd.dir/build.make:254: recipe for target 'src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o' failed
make[6]: *** [src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o] Error 1
make[6]: Leaving directory '/home/waltman/bin/speedseq/src/freebayes/bamtools/build'
CMakeFiles/Makefile2:520: recipe for target 'src/toolkit/CMakeFiles/bamtools_cmd.dir/all' failed
make[5]: *** [src/toolkit/CMakeFiles/bamtools_cmd.dir/all] Error 2
make[5]: Leaving directory '/home/waltman/bin/speedseq/src/freebayes/bamtools/build'
Makefile:129: recipe for target 'all' failed
make[4]: *** [all] Error 2
make[4]: Leaving directory '/home/waltman/bin/speedseq/src/freebayes/bamtools/build'
Makefile:39: recipe for target '../bamtools/lib/libbamtools.a' failed
make[3]: *** [../bamtools/lib/libbamtools.a] Error 2
make[3]: Leaving directory '/home/waltman/bin/speedseq/src/freebayes/src'
Makefile:2: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/waltman/bin/speedseq/src/freebayes'
Makefile:116: recipe for target 'freebayes' failed
make[1]: *** [freebayes] Error 2
make[1]: Leaving directory '/home/waltman/bin/speedseq'
Makefile:23: recipe for target 'all' failed
make: *** [all] Error 2
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/hall-lab/speedseq/issues/135, or mute the thread https://github.com/notifications/unsubscribe-auth/AAI4EccRpIkxZNOHrOTduJFDatVjJopPks5vF3qlgaJpZM4aNgQf .
Sorry. It took me a bit do this, but, yes, the freebayes standalone compiled without issue. As specified in the readme, these were the commands that I called:
$ git clone --recursive git://github.com/ekg/freebayes.git
$ cd freebayes/
$ make
I've tried compiling speedseq on 2 separate machines, and in both cases, the compilation step fails during the compilation of freeBayes. Here's the relevant error message log: