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

compilation failure on Debian / g++ 6 #5

Closed
osallou opened this issue Jan 13, 2017 · 4 comments
Closed

compilation failure on Debian / g++ 6 #5

osallou opened this issue Jan 13, 2017 · 4 comments

Comments

@osallou
Copy link

osallou commented Jan 13, 2017

Hi,
software fails to compile on Debian with g++ 6 while it works on Ubuntu with g++ 5

root@d9078aa6f9cd:/opt/debian/BaitFisher-package# make
g++ -I . -O3 -c bait-filter.cpp -o bait-filter.o
In file included from CBaitRecord.h:34:0,
from bait-filter.cpp:30:
CBlastParser.h: In member function 'void CBlast_parser::add(CBlastHit*)':
CBlastParser.h:542:98: error: no matching function for call to 'make_pair(const faststring&, CBlastHit*&)'
bh_map.insert(bh_map.end(), std::make_pair<faststring, CBlastHit*>(p->get_query_seq_name(), p));
^
In file included from /usr/include/c++/6/bits/stl_algobase.h:64:0,
from /usr/include/c++/6/bits/char_traits.h:39,
from /usr/include/c++/6/ios:40,
from /usr/include/c++/6/ostream:38,
from /usr/include/c++/6/iostream:39,
from bait-filter.cpp:27:
/usr/include/c++/6/bits/stl_pair.h:493: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++/6/bits/stl_pair.h:493:5: note: template argument deduction/substitution failed:
In file included from CBaitRecord.h:34:0,
from bait-filter.cpp:30:
CBlastParser.h:542:93: note: cannot convert 'p->CBlastHit::get_query_seq_name()' (type 'const faststring') to type 'faststring&&'
bh_map.insert(bh_map.end(), std::make_pair<faststring, CBlastHit*>(p->get_query_seq_name(), p));
~~~~~~~~~~~~~~~~~~~~~^~
makefile:8: recipe for target 'bai

@osallou
Copy link
Author

osallou commented Jan 13, 2017

On gcc 6 seems to be:

bh_map.insert(bh_map.end(), std::make_pair(p->get_query_seq_name(), p));

@cmayer
Copy link
Owner

cmayer commented Jan 14, 2017 via email

@osallou
Copy link
Author

osallou commented Jan 15, 2017 via email

@cmayer
Copy link
Owner

cmayer commented Jan 7, 2018

Solved. Sorry that it took so long to fix this. I worked on a new release and always thought the new release is ready in a few days. I have a new version of the BaitFilter program now. As soon as the manual is updated, I put together a new release.

@cmayer cmayer closed this as completed Jan 7, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants