SMTPlan icon indicating copy to clipboard operation
SMTPlan copied to clipboard

Issue using make command

Open modimanan opened this issue 6 years ago • 13 comments

After resolving all the dependencies I am unable to make the package This is the error showed.

[ 6%] Building CXX object CMakeFiles/SMTPlan.dir/src/SMTPlan.cpp.o In file included from /home/manan/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14:0, from /home/manan/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/manan/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h: In member function ‘void VAL::analysis::setFactory(VAL::VarTabFactory*)’: /home/manan/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:1897:31: warning: ‘auto_ptr’ is deprecated (declared at /usr/include/c++/4.8/backward/auto_ptr.h:87) [-Wdeprecated-declarations] auto_ptr<VarTabFactory> x(vf); ^ /home/manan/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h: In member function ‘void VAL::analysis::setFactory(VAL::StructureFactory*)’: /home/manan/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:1903:34: warning: ‘auto_ptr’ is deprecated (declared at /usr/include/c++/4.8/backward/auto_ptr.h:87) [-Wdeprecated-declarations] auto_ptr<StructureFactory> x(sf); ^ In file included from /home/manan/SMTPlan/SMTPlan/src/SMTPlan.cpp:8:0: /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderHappening.h: In member function ‘z3::expr SMTPlan::EncoderHappening::mk_expr(pexpr, int, int)’: /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderHappening.h:147:14: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) if(args[i].get_name() != "hasht") { ^ /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderHappening.h:148:48: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) if(algebraist->function_id_map.find(args[i].get_name()) == algebraist->function_id_map.end()) { ^ /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderHappening.h:150:40: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) sym = z3_context->real_val(args[i].get_name().c_str()); ^ /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderHappening.h:153:51: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) int fID = algebraist->function_id_map[args[i].get_name()]; ^ In file included from /home/manan/SMTPlan/SMTPlan/src/SMTPlan.cpp:9:0: /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderFluent.h: In member function ‘z3::expr SMTPlan::EncoderFluent::mk_expr(pexpr, int, int)’: /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderFluent.h:153:14: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) if(args[i].get_name() != "hasht") { ^ /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderFluent.h:154:48: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) if(algebraist->function_id_map.find(args[i].get_name()) == algebraist->function_id_map.end()) { ^ /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderFluent.h:156:40: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) sym = z3_context->real_val(args[i].get_name().c_str()); ^ /home/manan/SMTPlan/SMTPlan/include/SMTPlan/EncoderFluent.h:159:51: error: no match for ‘operator[]’ (operand types are ‘boost::container::flat_set<std::basic_string >’ and ‘int’) int fID = algebraist->function_id_map[args[i].get_name()]; ^ make[2]: *** [CMakeFiles/SMTPlan.dir/src/SMTPlan.cpp.o] Error 1 make[1]: *** [CMakeFiles/SMTPlan.dir/all] Error 2 make: *** [all] Error 2

modimanan avatar Jun 18 '18 08:06 modimanan

I get the same errors while performing make as described in the description.

NicolaiBongartz avatar Jun 27 '18 11:06 NicolaiBongartz

Likewise.

pindapuj avatar Jul 03 '18 17:07 pindapuj

Hello all,

I'm not getting any error. It looks like the error is popping up from an invalid operation on the pexpr type, which probably means there has been a breaking change in piranha.

I'm on this commit of piranha: 7e420423106923f700b72c07e24d1909d33898b4 https://github.com/bluescarni/piranha/commit/7e420423106923f700b72c07e24d1909d33898b4 Is it possible pulling this version will fix your issue?

Michael

m312z avatar Jul 09 '18 10:07 m312z

Doing a checkout to the commit removes the pexpr type error but others still remain. Is it possible that for this piranha commit we need an older smtplan commit as well?

Or did I not re"build" piranha correctly? I erased the build dir and followed the steps as before (1. mkdir, 2. cmake ../ and 3. sudo make install). And then a make clean in smtplan and make again.

Here my new errors:

[ 6%] Building CXX object CMakeFiles/SMTPlan.dir/src/SMTPlan.cpp.o In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:226:9: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] static auto_ptr<WriteController> wcntr; ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:233:36: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] static void setWriteController(auto_ptr<WriteController> w); ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:311:2: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] auto_ptr<SymbolFactory<symbol_class> > factory; ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h: In member function ‘void VAL::symbol_table<symbol_class>::setFactory(VAL::SymbolFactory<T>)’: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:319:3: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] auto_ptr<SymbolFactory<symbol_class> > x(sf); ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h: In member function ‘void VAL::symbol_table<symbol_class>::replaceFactory()’: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:326:3: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] auto_ptr<SymbolFactory<symbol_class> > x(new SpecialistSymbolFactory<symbol_class,T>()); ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h: At global scope: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:1867:2: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] auto_ptr<VarTabFactory> varTabFactory; ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:1868:2: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] auto_ptr<StructureFactory> strucFactory; ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h: In member function ‘void VAL::analysis::setFactory(VAL::VarTabFactory)’: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:1897:3: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] auto_ptr<VarTabFactory> x(vf); ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:14, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h: In member function ‘void VAL::analysis::setFactory(VAL::StructureFactory*)’: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/ptree.h:1903:3: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] auto_ptr<StructureFactory> x(sf); ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/instantiation.h:52, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Encoder.h:15, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:7: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/TypedAnalyser.h: At global scope: /home/mrtotoro/SMTPlan/SMTPlan/src/VALfiles/include/TypedAnalyser.h:792:9: warning: ‘template class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] static auto_ptr<EPSBuilder> buildEPS; ^~~~~~~~ In file included from /usr/include/c++/8/memory:80, from /usr/include/boost/functional/hash/extensions.hpp:37, from /usr/include/boost/functional/hash/hash.hpp:594, from /usr/include/boost/functional/hash.hpp:6, from /usr/local/include/piranha/detail/vector_hasher.hpp:32, from /usr/local/include/piranha/small_vector.hpp:47, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/include/c++/8/bits/unique_ptr.h:53:28: note: declared here template class auto_ptr; ^~~~~~~~ In file included from /usr/local/include/piranha/exceptions.hpp:43, from /usr/local/include/piranha/detail/vector_merge_args.hpp:36, from /usr/local/include/piranha/array_key.hpp:43, from /usr/local/include/piranha/piranha.hpp:292, from /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/mrtotoro/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/piranha/monomial.hpp: In instantiation of ‘class piranha::monomial’: /usr/local/include/piranha/is_key.hpp:50:49: required by substitution of ‘template<class U> static decltype (u.is_compatible(declval<const piranha::symbol_set&>())) piranha::detail::is_key_impl<piranha::monomial >::test0<U>(const U&) [with U = piranha::monomial]’ /usr/local/include/piranha/is_key.hpp:78:64: required from ‘const bool piranha::detail::is_key_impl<piranha::monomial >::value’ /usr/local/include/piranha/term.hpp:75:1: required from ‘class piranha::term<piranha::mp_rational<1>, piranha::monomial >’ /usr/include/c++/8/type_traits:884:48: required by substitution of ‘template<class _Tp, class> static std::true_type std::__do_is_default_constructible_impl::__test(int) [with _Tp = piranha::term<piranha::mp_rational<1>, piranha::monomial >; = ]’ /usr/include/c++/8/type_traits:895:35: [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] /usr/local/include/piranha/t_substitutable_series.hpp:79:7: required from ‘class piranha::t_substitutable_series<piranha::series<piranha::mp_rational<1>, piranha::monomial, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >’ /usr/local/include/piranha/substitutable_series.hpp:79:7: required from ‘class piranha::substitutable_series<piranha::t_substitutable_series<piranha::series<piranha::mp_rational<1>, piranha::monomial, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >’ /usr/local/include/piranha/ipow_substitutable_series.hpp:78:7: required from ‘class piranha::ipow_substitutable_series<piranha::substitutable_series<piranha::t_substitutable_series<piranha::series<piranha::mp_rational<1>, piranha::monomial, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >’ /usr/local/include/piranha/trigonometric_series.hpp:90:7: required from ‘class piranha::trigonometric_series<piranha::ipow_substitutable_series<piranha::substitutable_series<piranha::t_substitutable_series<piranha::series<piranha::mp_rational<1>, piranha::monomial, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > > >’ /usr/local/include/piranha/power_series.hpp:322:7: required from ‘class piranha::power_series<piranha::trigonometric_series<piranha::ipow_substitutable_series<piranha::substitutable_series<piranha::t_substitutable_series<piranha::series<piranha::mp_rational<1>, piranha::monomial, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > > >, piranha::polynomial<piranha::mp_rational<1>, piranha::monomial > >’ /usr/local/include/piranha/polynomial.hpp:151:7: required from ‘class piranha::polynomial<piranha::mp_rational<1>, piranha::monomial >’ /home/mrtotoro/SMTPlan/SMTPlan/include/SMTPlan/Algebraist.h:41:9: required from here /usr/local/include/piranha/monomial.hpp:152:5: error: static assertion failed: type trait check failure -> has_negate<T> PIRANHA_TT_CHECK(has_negate, T); ^ make[2]: *** [CMakeFiles/SMTPlan.dir/build.make:63: CMakeFiles/SMTPlan.dir/src/SMTPlan.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/SMTPlan.dir/all] Error 2 make: *** [Makefile:130: all] Error 2

NicolaiBongartz avatar Jul 09 '18 12:07 NicolaiBongartz

I'm up-to-date on the SMTPlan master. I will follow the same re-installation steps for Piranha and see what happens.

Edit: I deleted build in piranha and followed the steps you posted. I then used make clean and make in SMTPlan. Everything compiled fine. I'm using: Ubuntu 14.04 libboost-dev1.55 (and libboost-thread1.55-dev) Cmake 3.2.2 gcc 4.8.4

Michael

m312z avatar Jul 09 '18 17:07 m312z

It might be an issue with the versions.

Currently I have: fedora 28 libboost 1.66 cmake 3.11.2 gcc 8.1.1

NicolaiBongartz avatar Jul 13 '18 19:07 NicolaiBongartz

That is quite different. I've just updated to Ubuntu 16.04. I'll try deleting and rebuilding with more up-to-date versions. If that doesn't cause an error, I will try Fedora and see if that's the cause.

Michael

m312z avatar Jul 17 '18 12:07 m312z

I am using ubuntu 18.04, and used mppp version 0.9, and piranha at commit bluescarni/piranha@7e42042. Now everything works fine.

I have: gcc 7.4.0 cmake 3.10.2

ferdianjovan avatar Aug 01 '19 11:08 ferdianjovan

Hello there,

The error looks to be that pexpr (the polynomial class from piranha) is still different from expected. An error is being thrown when trying to access elements using the "[]" operator.

Doing a checkout to the commit of piranha you mentioned removes the pexpr type error for the first poster - can you try a clean build using that commit and see what happens? Otherwise I'm not sure what could be causing the problem.

Best regards, Michael

m312z avatar Feb 07 '20 11:02 m312z

Hi, I am using ubuntu 20.04, and used mppp version 0.9, and piranha at commit bluescarni/piranha@d6da0a0 (latest). I have: gcc 9.3.0 cmake version 3.16.3

Everything works smoothly until "make" command in SMTPlan. here is the error:

[ 6%] Building CXX object CMakeFiles/SMTPlan.dir/src/SMTPlan.cpp.o In file included from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/piranha/symbol_utils.hpp: In lambda function: /usr/local/include/piranha/symbol_utils.hpp:197:38: error: ‘const symbol_fset’ {aka ‘const class boost::container::flat_set<std::__cxx11::basic_string >’} has no member named ‘nth’ 197 | const auto &cur_sym = *s.nth(i); | ^~~ /usr/local/include/piranha/symbol_utils.hpp:199:91: error: no matching function for call to ‘boost::container::flat_set<std::__cxx11::basic_string >::flat_set()’ 199 | w_it = retval.emplace_hint(retval.end(), i, symbol_fset{*u_it}); | ^

In file included from /usr/local/include/piranha/symbol_utils.hpp:44, from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/boost/container/flat_set.hpp:187:4: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(boost::container::flat_set<Key, Compare, Allocator>&&, const allocator_type&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >; boost::container::flat_set<Key, Compare, Allocator>::allocator_type = std::allocator<std::__cxx11::basic_string >]’ 187 | flat_set(BOOST_RV_REF(flat_set) mx, const allocator_type &a) | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:187:4: note: candidate expects 2 arguments, 1 provided /usr/local/include/boost/container/flat_set.hpp:179:4: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(const boost::container::flat_set<Key, Compare, Allocator>&, const allocator_type&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >; boost::container::flat_set<Key, Compare, Allocator>::allocator_type = std::allocator<std::__cxx11::basic_string >]’ 179 | flat_set(const flat_set& x, const allocator_type &a) | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:179:4: note: candidate expects 2 arguments, 1 provided /usr/local/include/boost/container/flat_set.hpp:172:4: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(boost::container::flat_set<Key, Compare, Allocator>&&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >]’ 172 | flat_set(BOOST_RV_REF(flat_set) mx) | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:172:36: note: no known conversion for argument 1 from ‘const std::__cxx11::basic_string’ to ‘boost::container::flat_set<std::__cxx11::basic_string >&&’ 172 | flat_set(BOOST_RV_REF(flat_set) mx) | ^ /usr/local/include/boost/container/flat_set.hpp:163:4: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(const boost::container::flat_set<Key, Compare, Allocator>&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >]’ 163 | flat_set(const flat_set& x) | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:163:29: note: no known conversion for argument 1 from ‘const std::__cxx11::basic_string’ to ‘const boost::container::flat_set<std::__cxx11::basic_string >&’ 163 | flat_set(const flat_set& x) | ~~~~~~~~~~~~~~~~^ /usr/local/include/boost/container/flat_set.hpp:154:4: note: candidate: ‘template<class InputIterator> boost::container::flat_set<Key, Compare, Allocator>::flat_set(boost::container::ordered_unique_range_t, InputIterator, InputIterator, const Compare&, const allocator_type&)’ 154 | flat_set(ordered_unique_range_t, InputIterator first, InputIterator last, | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:154:4: note: template argument deduction/substitution failed: In file included from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/piranha/symbol_utils.hpp:199:91: note: candidate expects 5 arguments, 1 provided 199 | w_it = retval.emplace_hint(retval.end(), i, symbol_fset{*u_it}); | ^

In file included from /usr/local/include/piranha/symbol_utils.hpp:44, from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/boost/container/flat_set.hpp:137:4: note: candidate: ‘template<class InputIterator> boost::container::flat_set<Key, Compare, Allocator>::flat_set(InputIterator, InputIterator, const Compare&, const allocator_type&)’ 137 | flat_set(InputIterator first, InputIterator last, | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:137:4: note: template argument deduction/substitution failed: In file included from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/piranha/symbol_utils.hpp:199:91: note: candidate expects 4 arguments, 1 provided 199 | w_it = retval.emplace_hint(retval.end(), i, symbol_fset{*u_it}); | ^

In file included from /usr/local/include/piranha/symbol_utils.hpp:44, from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/boost/container/flat_set.hpp:127:13: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(const allocator_type&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >; boost::container::flat_set<Key, Compare, Allocator>::allocator_type = std::allocator<std::__cxx11::basic_string >]’ 127 | explicit flat_set(const allocator_type& a) | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:127:44: note: no known conversion for argument 1 from ‘const std::__cxx11::basic_string’ to ‘const allocator_type&’ {aka ‘const std::allocator<std::__cxx11::basic_string >&’} 127 | explicit flat_set(const allocator_type& a) | ~~~~~~~~~~~~~~~~~~~~~~^ /usr/local/include/boost/container/flat_set.hpp:119:13: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(const Compare&, const allocator_type&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >; boost::container::flat_set<Key, Compare, Allocator>::allocator_type = std::allocator<std::__cxx11::basic_string >]’ 119 | explicit flat_set(const Compare& comp, | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:119:37: note: no known conversion for argument 1 from ‘const std::__cxx11::basic_string’ to ‘const std::less<std::__cxx11::basic_string >&’ 119 | explicit flat_set(const Compare& comp, | ~~~~~~~~~~~~~~~^~~~ /usr/local/include/boost/container/flat_set.hpp:111:13: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set() [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >]’ 111 | explicit flat_set() | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:111:13: note: candidate expects 0 arguments, 1 provided In file included from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/piranha/symbol_utils.hpp:209:94: error: no matching function for call to ‘boost::container::flat_set<std::__cxx11::basic_string >::flat_set()’ 209 | retval.emplace_hint(retval.end(), s.size(), symbol_fset{*u_it}); | ^

In file included from /usr/local/include/piranha/symbol_utils.hpp:44, from /usr/local/include/piranha/key/key_is_one.hpp:37, from /usr/local/include/piranha/is_key.hpp:38, from /usr/local/include/piranha/math.hpp:49, from /usr/local/include/piranha/array_key.hpp:47, from /usr/local/include/piranha/piranha.hpp:147, from /home/w/SMTPlan/SMTPlan/include/SMTPlan/ProblemInfo.h:10, from /home/w/SMTPlan/SMTPlan/src/SMTPlan.cpp:6: /usr/local/include/boost/container/flat_set.hpp:187:4: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(boost::container::flat_set<Key, Compare, Allocator>&&, const allocator_type&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >; boost::container::flat_set<Key, Compare, Allocator>::allocator_type = std::allocator<std::__cxx11::basic_string >]’ 187 | flat_set(BOOST_RV_REF(flat_set) mx, const allocator_type &a) | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:187:4: note: candidate expects 2 arguments, 1 provided /usr/local/include/boost/container/flat_set.hpp:179:4: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(const boost::container::flat_set<Key, Compare, Allocator>&, const allocator_type&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >; boost::container::flat_set<Key, Compare, Allocator>::allocator_type = std::allocator<std::__cxx11::basic_string >]’ 179 | flat_set(const flat_set& x, const allocator_type &a) | ^~~~~~~~ /usr/local/include/boost/container/flat_set.hpp:179:4: note: candidate expects 2 arguments, 1 provided /usr/local/include/boost/container/flat_set.hpp:172:4: note: candidate: ‘boost::container::flat_set<Key, Compare, Allocator>::flat_set(boost::container::flat_set<Key, Compare, Allocator>&&) [with Key = std::__cxx11::basic_string; Compare = std::less<std::__cxx11::basic_string >; Allocator = std::allocator<std::__cxx11::basic_string >]’ 172 | flat_set(BOOST_RV_REF(flat_set) mx) | ^~~~~~~~ And there are some lines, i am not including all.

I have tried to install commit at bluescarni/piranha@7e42042. Tried Boost 1.55 version, gcc 7.4.0, cmake 3.10.2. My Guess, these are not works with ubuntu 20.04. Am i Right?

please guide me what to do. Should I move to older ubuntu, if yes, then which one. And what is SMTPlan dependency combination for that version.

Miah

amia20 avatar Apr 29 '20 10:04 amia20

I wanted to chime in that I was able to resolve this issue with the following environment:

  • Debian 10.9 (ran on Windows using WSL 2)
  • SMTPlan at the current most recent commit on master (edda8a805ea2b4086e0cf31b9756f55369ce084e)
    • I had to add the -pthread argument to the C++ compiler, and was able to do so by modifying the command in the "CMakeLists.txt" file (line 12) of SMTPlan to look like the following:
      • set(CMAKE_CXX_FLAGS "-std=c++0x -pthread")
  • piranha 0.10 (commit 7e42042)
  • mp++ 0.9 (commit d485851ce16c9f885ca63202f056a9aaacdafd39)
  • boost 1.56.0 (downloaded and compiled from boost website)
  • gcc 7.4.0 (downloaded and compiled from the gnu website)
  • cmake 3.10.2 (downloaded and compiled from cmake website)

It was downgrading gcc from version 8.4 to version 7.4.0 that finally did it for me, as well as setting the -pthread argument. I can now successfully get SMTPlan to compile and run.

hatfield-c avatar Jul 25 '21 23:07 hatfield-c