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

Error in building "open_voronoi_py" #54

Open
huberemanuel opened this issue Mar 11, 2023 · 2 comments
Open

Error in building "open_voronoi_py" #54

huberemanuel opened this issue Mar 11, 2023 · 2 comments

Comments

@huberemanuel
Copy link

I have the following error on my local machine (Ubuntu 22.04) and by forking and triggering the workflow.

Error:

Run cmake --build /home/runner/work/openvoronoi/openvoronoi/build --config Release
[  2%] Building CXX object CMakeFiles/libopenvoronoi.dir/voronoidiagram.cpp.o
[  4%] Building CXX object CMakeFiles/libopenvoronoi.dir/vertex.cpp.o
[  7%] Building CXX object CMakeFiles/libopenvoronoi.dir/edge.cpp.o
[  9%] Building CXX object CMakeFiles/libopenvoronoi.dir/checker.cpp.o
[ [1](https://github.com/huberemanuel/openvoronoi/actions/runs/4390203857/jobs/7688482103#step:7:1)1%] Building CXX object CMakeFiles/libopenvoronoi.dir/common/point.cpp.o
[ 14%] Building CXX object CMakeFiles/libopenvoronoi.dir/vertex_positioner.cpp.o
[ 1[6](https://github.com/huberemanuel/openvoronoi/actions/runs/4390203857/jobs/7688482103#step:7:7)%] Building CXX object CMakeFiles/libopenvoronoi.dir/common/numeric.cpp.o
[ 19%] Building CXX object CMakeFiles/libopenvoronoi.dir/medial_axis_pocket.cpp.o
[ 21%] Building CXX object CMakeFiles/libopenvoronoi.dir/medial_axis_walk.cpp.o
[ 23%] Building CXX object CMakeFiles/libopenvoronoi.dir/offset.cpp.o
[ 26%] Linking CXX shared library libopenvoronoi.so
[ 26%] Built target libopenvoronoi
[ 28%] Building CXX object CMakeFiles/openvoronoi_static.dir/voronoidiagram.cpp.o
[ 30%] Building CXX object CMakeFiles/openvoronoi_static.dir/vertex.cpp.o
[ 33%] Building CXX object CMakeFiles/openvoronoi_static.dir/edge.cpp.o
[ 35%] Building CXX object CMakeFiles/openvoronoi_static.dir/checker.cpp.o
[ 38%] Building CXX object CMakeFiles/openvoronoi_static.dir/common/point.cpp.o
[ 40%] Building CXX object CMakeFiles/openvoronoi_static.dir/vertex_positioner.cpp.o
[ 42%] Building CXX object CMakeFiles/openvoronoi_static.dir/common/numeric.cpp.o
[ 45%] Building CXX object CMakeFiles/openvoronoi_static.dir/medial_axis_pocket.cpp.o
[ 4[7](https://github.com/huberemanuel/openvoronoi/actions/runs/4390203857/jobs/7688482103#step:7:8)%] Building CXX object CMakeFiles/openvoronoi_static.dir/medial_axis_walk.cpp.o
[ 50%] Building CXX object CMakeFiles/openvoronoi_static.dir/offset.cpp.o
[ 52%] Linking CXX static library libopenvoronoi_static.a
[ 52%] Built target openvoronoi_static
[ 54%] Building CXX object CMakeFiles/openvoronoi.dir/py/open_voronoi_py.cpp.o
In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                 from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                 from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                 from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                 from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:12,
                 from /usr/include/boost/python/converter/arg_to_python.hpp:15,
                 from /usr/include/boost/python/call.hpp:15,
                 from /usr/include/boost/python/object_core.hpp:14,
                 from /usr/include/boost/python/args.hpp:22,
                 from /usr/include/boost/python.hpp:11,
                 from /home/runner/work/openvoronoi/openvoronoi/src/py/open_voronoi_py.cpp:21:
/usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.’
   36 | BOOST_PRAGMA_MESSAGE(
      | ^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/detail/iterator.hpp:13:1: note: ‘#pragma message: This header is deprecated. Use <iterator> instead.’
   13 | BOOST_HEADER_DEPRECATED("<iterator>")
      | ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/11/set:60,
                 from /home/runner/work/openvoronoi/openvoronoi/src/voronoidiagram.hpp:23,
                 from /home/runner/work/openvoronoi/openvoronoi/src/py/voronoidiagram_py.hpp:23,
                 from /home/runner/work/openvoronoi/openvoronoi/src/py/open_voronoi_py.cpp:23:
/usr/include/c++/11/bits/stl_tree.h: In instantiation of ‘static const _Key& std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_S_key(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Const_Link_type) [with _Key = ovd::OffsetLoop; _Val = ovd::OffsetLoop; _KeyOfValue = std::_Identity<ovd::OffsetLoop>; _Compare = ovd::OffsetLoopCompare; _Alloc = std::allocator<ovd::OffsetLoop>; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Const_Link_type = const std::_Rb_tree_node<ovd::OffsetLoop>*]’:
/usr/include/c++/11/bits/stl_tree.h:2102:44:   required from ‘std::pair<std::_Rb_tree_node_base*, std::_Rb_tree_node_base*> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_get_insert_equal_pos(const key_type&) [with _Key = ovd::OffsetLoop; _Val = ovd::OffsetLoop; _KeyOfValue = std::_Identity<ovd::OffsetLoop>; _Compare = ovd::OffsetLoopCompare; _Alloc = std::allocator<ovd::OffsetLoop>; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::key_type = ovd::OffsetLoop]’
/usr/include/c++/11/bits/stl_tree.h:2151:4:   required from ‘std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_equal(_Arg&&) [with _Arg = const ovd::OffsetLoop&; _Key = ovd::OffsetLoop; _Val = ovd::OffsetLoop; _KeyOfValue = std::_Identity<ovd::OffsetLoop>; _Compare = ovd::OffsetLoopCompare; _Alloc = std::allocator<ovd::OffsetLoop>; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator = std::_Rb_tree<ovd::OffsetLoop, ovd::OffsetLoop, std::_Identity<ovd::OffsetLoop>, ovd::OffsetLoopCompare, std::allocator<ovd::OffsetLoop> >::iterator]’
/usr/include/c++/11/bits/stl_multiset.h:503:36:   required from ‘std::multiset<_Key, _Compare, _Alloc>::iterator std::multiset<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = ovd::OffsetLoop; _Compare = ovd::OffsetLoopCompare; _Alloc = std::allocator<ovd::OffsetLoop>; std::multiset<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree<ovd::OffsetLoop, ovd::OffsetLoop, std::_Identity<ovd::OffsetLoop>, ovd::OffsetLoopCompare, std::allocator<ovd::OffsetLoop> >::const_iterator; std::multiset<_Key, _Compare, _Alloc>::value_type = ovd::OffsetLoop]’
/home/runner/work/openvoronoi/openvoronoi/src/offset_sorter.hpp:124:41:   required from here
/usr/include/c++/11/bits/stl_tree.h:770:15: error: static assertion failed: comparison object must be invocable as const
  770 |               is_invocable_v<const _Compare&, const _Key&, const _Key&>,
      |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/bits/stl_tree.h:770:15: note: ‘std::is_invocable_v<const ovd::OffsetLoopCompare&, const ovd::OffsetLoop&, const ovd::OffsetLoop&>’ evaluates to false
gmake[2]: *** [CMakeFiles/openvoronoi.dir/build.make:76: CMakeFiles/openvoronoi.dir/py/open_voronoi_py.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:43[8](https://github.com/huberemanuel/openvoronoi/actions/runs/4390203857/jobs/7688482103#step:7:9): CMakeFiles/openvoronoi.dir/all] Error 2
gmake: *** [Makefile:[16](https://github.com/huberemanuel/openvoronoi/actions/runs/4390203857/jobs/7688482103#step:7:17)6: all] Error 2
Error: Process completed with exit code 2.
@meerfrau
Copy link

Me too:

./openvoronoi/src/offset_sorter.hpp:124:41:   required from here
/usr/include/c++/12.2.1/bits/stl_tree.h:770:15: error: static assertion failed: comparison object must be invocable as const
  770 |               is_invocable_v<const _Compare&, const _Key&, const _Key&>,
      |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_tree.h:770:15: note: 'std::is_invocable_v<const ovd::OffsetLoopCompare&, const ovd::OffsetLoop&, const ovd::OffsetLoop&>' evaluates to false

@voneiden
Copy link

voneiden commented May 7, 2023

From C++17 onwards this

bool operator() (OffsetLoop l1, OffsetLoop l2) {

probably needs to be

    bool operator() (OffsetLoop l1, OffsetLoop l2) const {

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

Successfully merging a pull request may close this issue.

3 participants