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

Abyss 2.03 compile error -- deleted function #204

Open
eroberson opened this issue Mar 20, 2018 · 7 comments
Open

Abyss 2.03 compile error -- deleted function #204

eroberson opened this issue Mar 20, 2018 · 7 comments

Comments

@eroberson
Copy link

The v2.0.3 version of AbySS failing due to a "deleted function".

GCC Suite: 7.2.0
Boost: 1.66.0
OpenMPI: 3.0.0
Sparsehash: 2.0.3

Configure command:

./configure --prefix=/home/eli --with-boost=/home/eli/src/boost_1_66_0/stage/lib FC=/usr/local/bin/gfortran CFLAGS="-m64 -O3 -mtune=core2" CXXFLAGS="-m64 -O3 -mtune=core2" FCFLAGS="-m64 -O3 -mtune=core2"

Error:

Making all in Layout
make[2]: Entering directory `/home/eli/src/abyss-2.0.3/Layout'
g++ -DHAVE_CONFIG_H -I. -I..  -I.. -I../Common -I/home/eli/src/abyss-2.0.3 -isystem/home/eli/src/boost_1_66_0/stage/lib -isystem/home/eli/src/boost_1_66_0/stage/lib/include     -isystem/home/eli/src/abyss-2.0.3/boost_1_56_0 -Wall -Wextra -m64 -O3 -mtune=core2 -MT abyss_layout-layout.o -MD -MP -MF .deps/abyss_layout-layout.Tpo -c -o abyss_layout-layout.o `test -f 'layout.cc' || echo './'`layout.cc
In file included from ../Graph/Assemble.h:6:0,
                 from layout.cc:5:
../Graph/DepthFirstSearch.h: In instantiation of ‘void depthFirstSearch(const Graph&, Visitor, ColorMap, bool) [with Graph = ContigGraph<DirectedGraph<Length, Distance> >; Visitor = AssembleVisitor<std::back_insert_iterator<std::vector<std::vector<ContigNode> > > >; ColorMap = boost::vector_property_map<boost::default_color_type, ContigIndexMap>]’:
../Graph/Assemble.h:64:18:   required from ‘void assembleDFS(const Graph&, OutIt, bool) [with Graph = ContigGraph<DirectedGraph<Length, Distance> >; OutIt = std::back_insert_iterator<std::vector<std::vector<ContigNode> > >]’
layout.cc:277:46:   required from here
../Graph/DepthFirstSearch.h:39:41: error: use of deleted function ‘boost::vector_property_map<boost::default_color_type, ContigIndexMap>::vector_property_map(const boost::vector_property_map<boost::default_color_type, ContigIndexMap>&)’
    boost::detail::depth_first_visit_impl(g, u, vis, color,
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
      boost::detail::nontruth2());
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/boost/property_map/property_map.hpp:844:0,
                 from /usr/include/boost/graph/properties.hpp:19,
                 from ../Graph/Properties.h:6,
                 from ../Common/ContigNode.h:6,
                 from ../Common/ContigPath.h:4,
                 from layout.cc:2:
/usr/include/boost/property_map/vector_property_map.hpp:19:11: note: ‘boost::vector_property_map<boost::default_color_type, ContigIndexMap>::vector_property_map(const boost::vector_property_map<boost::default_color_type, ContigIndexMap>&)’ is implicitly deleted because the default definition would be ill-formed:
     class vector_property_map
           ^~~~~~~~~~~~~~~~~~~
/usr/include/boost/property_map/vector_property_map.hpp:19:11: error: use of deleted function ‘boost::shared_ptr<std::vector<boost::default_color_type, std::allocator<boost::default_color_type> > >::shared_ptr(const boost::shared_ptr<std::vector<boost::default_color_type, std::allocator<boost::default_color_type> > >&)’
In file included from /usr/include/boost/shared_ptr.hpp:17:0,
                 from /usr/include/boost/property_map/vector_property_map.hpp:14,
                 from /usr/include/boost/property_map/property_map.hpp:844,
                 from /usr/include/boost/graph/properties.hpp:19,
                 from ../Graph/Properties.h:6,
                 from ../Common/ContigNode.h:6,
                 from ../Common/ContigPath.h:4,
                 from layout.cc:2:
/usr/include/boost/smart_ptr/shared_ptr.hpp:168:25: note: ‘boost::shared_ptr<std::vector<boost::default_color_type, std::allocator<boost::default_color_type> > >::shared_ptr(const boost::shared_ptr<std::vector<boost::default_color_type, std::allocator<boost::default_color_type> > >&)’ is implicitly declared as deleted because ‘boost::shared_ptr<std::vector<boost::default_color_type, std::allocator<boost::default_color_type> > >’ declares a move constructor or move assignment operator
 template<class T> class shared_ptr
                         ^~~~~~~~~~
In file included from ../Graph/DepthFirstSearch.h:5:0,
                 from ../Graph/Assemble.h:6,
                 from layout.cc:5:
/usr/include/boost/graph/depth_first_search.hpp:77:10: note:   initializing argument 4 of ‘void boost::detail::depth_first_visit_impl(const IncidenceGraph&, typename boost::graph_traits<Graph>::vertex_descriptor, DFSVisitor&, ColorMap, TerminatorFunc) [with IncidenceGraph = ContigGraph<DirectedGraph<Length, Distance> >; DFSVisitor = AssembleVisitor<std::back_insert_iterator<std::vector<std::vector<ContigNode> > > >; ColorMap = boost::vector_property_map<boost::default_color_type, ContigIndexMap>; TerminatorFunc = boost::detail::nontruth2; typename boost::graph_traits<Graph>::vertex_descriptor = ContigNode]’
     void depth_first_visit_impl
          ^~~~~~~~~~~~~~~~~~~~~~
In file included from ../Graph/Assemble.h:6:0,
                 from layout.cc:5:
../Graph/DepthFirstSearch.h:53:41: error: use of deleted function ‘boost::vector_property_map<boost::default_color_type, ContigIndexMap>::vector_property_map(const boost::vector_property_map<boost::default_color_type, ContigIndexMap>&)’
    boost::detail::depth_first_visit_impl(g, u, vis, color,
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
      boost::detail::nontruth2());
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../Graph/DepthFirstSearch.h:5:0,
                 from ../Graph/Assemble.h:6,
                 from layout.cc:5:
/usr/include/boost/graph/depth_first_search.hpp:77:10: note:   initializing argument 4 of ‘void boost::detail::depth_first_visit_impl(const IncidenceGraph&, typename boost::graph_traits<Graph>::vertex_descriptor, DFSVisitor&, ColorMap, TerminatorFunc) [with IncidenceGraph = ContigGraph<DirectedGraph<Length, Distance> >; DFSVisitor = AssembleVisitor<std::back_insert_iterator<std::vector<std::vector<ContigNode> > > >; ColorMap = boost::vector_property_map<boost::default_color_type, ContigIndexMap>; TerminatorFunc = boost::detail::nontruth2; typename boost::graph_traits<Graph>::vertex_descriptor = ContigNode]’
     void depth_first_visit_impl
          ^~~~~~~~~~~~~~~~~~~~~~
In file included from ../Graph/Assemble.h:6:0,
                 from layout.cc:5:
../Graph/DepthFirstSearch.h:67:41: error: use of deleted function ‘boost::vector_property_map<boost::default_color_type, ContigIndexMap>::vector_property_map(const boost::vector_property_map<boost::default_color_type, ContigIndexMap>&)’
    boost::detail::depth_first_visit_impl(g, u, vis, color,
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
      boost::detail::nontruth2());
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../Graph/DepthFirstSearch.h:5:0,
                 from ../Graph/Assemble.h:6,
                 from layout.cc:5:
/usr/include/boost/graph/depth_first_search.hpp:77:10: note:   initializing argument 4 of ‘void boost::detail::depth_first_visit_impl(const IncidenceGraph&, typename boost::graph_traits<Graph>::vertex_descriptor, DFSVisitor&, ColorMap, TerminatorFunc) [with IncidenceGraph = ContigGraph<DirectedGraph<Length, Distance> >; DFSVisitor = AssembleVisitor<std::back_insert_iterator<std::vector<std::vector<ContigNode> > > >; ColorMap = boost::vector_property_map<boost::default_color_type, ContigIndexMap>; TerminatorFunc = boost::detail::nontruth2; typename boost::graph_traits<Graph>::vertex_descriptor = ContigNode]’
     void depth_first_visit_impl
          ^~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [abyss_layout-layout.o] Error 1
make[2]: Leaving directory `/home/eli/src/abyss-2.0.3/Layout'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/eli/src/abyss-2.0.3'
make: *** [all] Error 2```
@benvvalk
Copy link
Contributor

benvvalk commented Mar 20, 2018

@eroberson Thanks for reporting this and thanks also for providing your exact GCC version and Boost version up front.

I'm not sure how I will fix this at the moment, but if you are looking for a quick workaround I'm guessing that using an using an older version of Boost will do the trick. IIRC I have tested with Boost 1.62 and maybe Boost 1.64.

@eroberson
Copy link
Author

Happy to help!

I haven't retried with Boost 1.66.0. Going back over everything carefully it looks like when I invoked the 1.66.0 configure command I was pointing at the linker directory. I need to retry it to make sure that wasn't the only error.

Either way, I can confirm it compiled with 1.62.0:

./configure --prefix=/home/eli \
--with-boost=/home/eli/src/boost_1_62_0 \
FC=/usr/local/bin/gfortran \
CFLAGS="-m64 -O3 -mtune=core2" \
CXXFLAGS="-m64 -O3 -mtune=core2" \
FCFLAGS="-m64 -O3 -mtune=core2"

@benvvalk
Copy link
Contributor

@eroberson Thanks, good to know!

@stale
Copy link

stale bot commented Apr 11, 2018

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale label Apr 11, 2018
@benvvalk
Copy link
Contributor

still want to fix this

@stale stale bot removed the stale label Apr 11, 2018
@stale
Copy link

stale bot commented May 2, 2018

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale label May 2, 2018
@stale stale bot removed the stale label May 2, 2018
@benvvalk
Copy link
Contributor

benvvalk commented May 2, 2018

still needs to be fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants