Hello, I would like to package PotreeConverter for openSUSE on our build system.
I'm trying first to build it locally I got strange compilation error.
cmake VERBOSE=1 ../
-- Searching for LibLAS + library
-- Found libLAS version: 1.06.000
-- Boost version: 1.53.0
-- Found the following Boost libraries:
-- system
-- thread
-- filesystem
-- program_options
-- Boost_INCLUDE_DIRS: /usr/include
-- Boost_LIBRARY_DIRS: /usr/lib64
-- Configuring done
-- Generating done
-- Build files have been written to: /home/bruno/workspace/PotreeConverter/_build
make VERBOSE=1 -j1
/usr/bin/cmake -H/home/bruno/workspace/PotreeConverter -B/home/bruno/workspace/PotreeConverter/_build --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /home/bruno/workspace/PotreeConverter/_build/CMakeFiles /home/bruno/workspace/PotreeConverter/_build/CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory /home/bruno/workspace/PotreeConverter/_build' make -f PotreeConverter/CMakeFiles/PotreeConverter.dir/build.make PotreeConverter/CMakeFiles/PotreeConverter.dir/depend make[2]: Entering directory
/home/bruno/workspace/PotreeConverter/_build'
cd /home/bruno/workspace/PotreeConverter/_build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /home/bruno/workspace/PotreeConverter /home/bruno/workspace/PotreeConverter/PotreeConverter /home/bruno/workspace/PotreeConverter/_build /home/bruno/workspace/PotreeConverter/_build/PotreeConverter /home/bruno/workspace/PotreeConverter/_build/PotreeConverter/CMakeFiles/PotreeConverter.dir/DependInfo.cmake --color=
Dependee "/home/bruno/workspace/PotreeConverter/_build/PotreeConverter/CMakeFiles/PotreeConverter.dir/DependInfo.cmake" is newer than depender "/home/bruno/workspace/PotreeConverter/_build/PotreeConverter/CMakeFiles/PotreeConverter.dir/depend.internal".
Dependee "/home/bruno/workspace/PotreeConverter/_build/PotreeConverter/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/home/bruno/workspace/PotreeConverter/_build/PotreeConverter/CMakeFiles/PotreeConverter.dir/depend.internal".
Scanning dependencies of target PotreeConverter
make[2]: Leaving directory /home/bruno/workspace/PotreeConverter/_build' make -f PotreeConverter/CMakeFiles/PotreeConverter.dir/build.make PotreeConverter/CMakeFiles/PotreeConverter.dir/build make[2]: Entering directory
/home/bruno/workspace/PotreeConverter/_build'
/usr/bin/cmake -E cmake_progress_report /home/bruno/workspace/PotreeConverter/_build/CMakeFiles 1
[ 12%] Building CXX object PotreeConverter/CMakeFiles/PotreeConverter.dir/src/GridCell.cpp.o
cd /home/bruno/workspace/PotreeConverter/_build/PotreeConverter && /usr/bin/c++ -std=c++0x -I/home/bruno/workspace/PotreeConverter/PotreeConverter/include -o CMakeFiles/PotreeConverter.dir/src/GridCell.cpp.o -c /home/bruno/workspace/PotreeConverter/PotreeConverter/src/GridCell.cpp
/usr/bin/cmake -E cmake_progress_report /home/bruno/workspace/PotreeConverter/_build/CMakeFiles 2
[ 25%] Building CXX object PotreeConverter/CMakeFiles/PotreeConverter.dir/src/XYZPointReader.cpp.o
cd /home/bruno/workspace/PotreeConverter/_build/PotreeConverter && /usr/bin/c++ -std=c++0x -I/home/bruno/workspace/PotreeConverter/PotreeConverter/include -o CMakeFiles/PotreeConverter.dir/src/XYZPointReader.cpp.o -c /home/bruno/workspace/PotreeConverter/PotreeConverter/src/XYZPointReader.cpp
/usr/bin/cmake -E cmake_progress_report /home/bruno/workspace/PotreeConverter/_build/CMakeFiles 3
[ 37%] Building CXX object PotreeConverter/CMakeFiles/PotreeConverter.dir/src/BinPointReader.cpp.o
cd /home/bruno/workspace/PotreeConverter/_build/PotreeConverter && /usr/bin/c++ -std=c++0x -I/home/bruno/workspace/PotreeConverter/PotreeConverter/include -o CMakeFiles/PotreeConverter.dir/src/BinPointReader.cpp.o -c /home/bruno/workspace/PotreeConverter/PotreeConverter/src/BinPointReader.cpp
/usr/bin/cmake -E cmake_progress_report /home/bruno/workspace/PotreeConverter/_build/CMakeFiles 4
[ 50%] Building CXX object PotreeConverter/CMakeFiles/PotreeConverter.dir/src/SparseGrid.cpp.o
cd /home/bruno/workspace/PotreeConverter/_build/PotreeConverter && /usr/bin/c++ -std=c++0x -I/home/bruno/workspace/PotreeConverter/PotreeConverter/include -o CMakeFiles/PotreeConverter.dir/src/SparseGrid.cpp.o -c /home/bruno/workspace/PotreeConverter/PotreeConverter/src/SparseGrid.cpp
/usr/bin/cmake -E cmake_progress_report /home/bruno/workspace/PotreeConverter/_build/CMakeFiles 5
[ 62%] Building CXX object PotreeConverter/CMakeFiles/PotreeConverter.dir/src/LASPointReader.cpp.o
cd /home/bruno/workspace/PotreeConverter/_build/PotreeConverter && /usr/bin/c++ -std=c++0x -I/home/bruno/workspace/PotreeConverter/PotreeConverter/include -o CMakeFiles/PotreeConverter.dir/src/LASPointReader.cpp.o -c /home/bruno/workspace/PotreeConverter/PotreeConverter/src/LASPointReader.cpp
/usr/bin/cmake -E cmake_progress_report /home/bruno/workspace/PotreeConverter/_build/CMakeFiles 6
[ 75%] Building CXX object PotreeConverter/CMakeFiles/PotreeConverter.dir/src/main.cpp.o
cd /home/bruno/workspace/PotreeConverter/_build/PotreeConverter && /usr/bin/c++ -std=c++0x -I/home/bruno/workspace/PotreeConverter/PotreeConverter/include -o CMakeFiles/PotreeConverter.dir/src/main.cpp.o -c /home/bruno/workspace/PotreeConverter/PotreeConverter/src/main.cpp
In file included from /usr/include/boost/range/iterator_range_core.hpp:29:0,
from /usr/include/boost/lexical_cast.hpp:169,
from /usr/include/boost/program_options/value_semantic.hpp:14,
from /usr/include/boost/program_options/options_description.hpp:13,
from /usr/include/boost/program_options.hpp:15,
from /home/bruno/workspace/PotreeConverter/PotreeConverter/src/main.cpp:21:
/usr/include/boost/range/algorithm/equal.hpp: In instantiation of ‘bool boost::range::equal(const SinglePassRange1&, const SinglePassRange2&) [with SinglePassRange1 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; SinglePassRange2 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::basic_string > >]’:
/usr/include/boost/range/iterator_range_core.hpp:434:39: required from ‘bool boost::operator==(const boost::iterator_range&, const boost::iterator_range&) [with Iterator1T = __gnu_cxx::__normal_iterator<char*, std::basic_string >; Iterator2T = __gnu_cxx::__normal_iterator<char*, std::basic_string >]’
/usr/include/boost/algorithm/string/find_iterator.hpp:331:32: required from ‘bool boost::algorithm::split_iterator::equal(const boost::algorithm::split_iterator&) const [with IteratorT = __gnu_cxx::normal_iterator<char*, std::basic_string >]’
/usr/include/boost/iterator/iterator_facade.hpp:532:29: required from ‘static bool boost::iterator_core_access::equal(const Facade1&, const Facade2&, mpl::true) [with Facade1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; Facade2 = boost::algorithm::split_iterator<gnu_cxx::normal_iterator<char*, std::basic_string > >; mpl::true = mpl::bool]’
/usr/include/boost/iterator/iterator_facade.hpp:832:3: required from ‘typename boost::detail::enable_if_interoperable<Derived1, Derived2, typename boost::mpl::apply2<boost::detail::always_bool2, Derived1, Derived2>::type>::type boost::operator==(const boost::iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const boost::iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; V1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; TC1 = boost::forward_traversal_tag; Reference1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::basic_string > >&; Difference1 = long int; Derived2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; V2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; TC2 = boost::forward_traversal_tag; Reference2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::basic_string > >&; Difference2 = long int; typename boost::detail::enable_if_interoperable<Derived1, Derived2, typename boost::mpl::apply2<boost::detail::always_bool2, Derived1, Derived2>::type>::type = bool]’
/usr/include/boost/iterator/iterator_adaptor.hpp:317:29: required from ‘bool boost::iterator_adaptor<Derived, Base, Value, Traversal, Reference, Difference>::equal(const boost::iterator_adaptor<OtherDerived, OtherIterator, V, C, R, D>&) const [with OtherDerived = boost::transform_iteratorboost::algorithm::detail::copy_iterator_rangeF<std::basic_string<char, __gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::use_default, boost::use_default>; OtherIterator = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; V = std::basic_string; C = boost::use_default; R = std::basic_string; D = boost::use_default; Derived = boost::transform_iteratorboost::algorithm::detail::copy_iterator_rangeF<std::basic_string<char, __gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::use_default, boost::use_default>; Base = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >; Value = std::basic_string; Traversal = boost::use_default; Reference = std::basic_string; Difference = boost::use_default]’
/usr/include/boost/iterator/iterator_facade.hpp:532:29: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/c++/4.8/bits/stl_vector.h:1186:19: required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::transform_iteratorboost::algorithm::detail::copy_iterator_rangeF<std::basic_string<char, __gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::use_default, boost::use_default>; _Tp = std::basic_string; _Alloc = std::allocatorstd::basic_string]’
/usr/include/c++/4.8/bits/stl_vector.h:1177:56: required from ‘void std::vector<_Tp, _Alloc>::_M_initialize_dispatch(_InputIterator, _InputIterator, std::__false_type) [with _InputIterator = boost::transform_iteratorboost::algorithm::detail::copy_iterator_rangeF<std::basic_string<char, __gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::use_default, boost::use_default>; _Tp = std::basic_string; _Alloc = std::allocatorstd::basic_string]’
/usr/include/c++/4.8/bits/stl_vector.h:395:65: required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::transform_iteratorboost::algorithm::detail::copy_iterator_rangeF<std::basic_string<char, __gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string > >, boost::use_default, boost::use_default>; = void; _Tp = std::basic_string; _Alloc = std::allocatorstd::basic_string; std::vector<_Tp, _Alloc>::allocator_type = std::allocatorstd::basic_string]’
/usr/include/boost/algorithm/string/iter_find.hpp:178:49: required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&, FinderT) [with SequenceSequenceT = std::vectorstd::basic_string; RangeT = std::basic_string; FinderT = boost::algorithm::detail::token_finderFboost::algorithm::detail::is_any_ofF]’
/usr/include/boost/algorithm/string/split.hpp:149:69: required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&, PredicateT, boost::algorithm::token_compress_mode_type) [with SequenceSequenceT = std::vectorstd::basic_string; RangeT = std::basic_string; PredicateT = boost::algorithm::detail::is_any_ofF]’
/home/bruno/workspace/PotreeConverter/PotreeConverter/include/XYZPointReader.h:63:40: required from here
/usr/include/boost/range/algorithm/equal.hpp:178:9: internal compiler error: Segmentation fault
}
^
Please submit a full bug report,
with preprocessed source if appropriate.
See http://bugs.opensuse.org/ for instructions.
make[2]: *** [PotreeConverter/CMakeFiles/PotreeConverter.dir/src/main.cpp.o] Error 1
make[2]: Leaving directory /home/bruno/workspace/PotreeConverter/_build' make[1]: *** [PotreeConverter/CMakeFiles/PotreeConverter.dir/all] Error 2 make[1]: Leaving directory
/home/bruno/workspace/PotreeConverter/_build'
make: *** [all] Error 2
cmake is 2.8.11.2 and boost is 1.53.0
Thanks for any tips or ideas