Skip to content

make error question #46

@ALIEN-orBoT

Description

@ALIEN-orBoT

Hi all,
Thanks for your attention.
After I run cmake -DMOTION_BUILD_EXE=On, then I run make, error happened in aes128_main.cpp about 'parties'

the details are as follows.

$ cmake .. -DMOTION_BUILD_EXE=On
BUILD TYPE: Release
-- Found fmt
-- Found flatbuffers
-- Configuring done
-- Generating done
-- Build files have been written to: /home/alien/motion/MOTION/build
$ make
[  2%] Built target fbs-generation
[  2%] Built target motion_config
[  3%] gather information about git repository and generating version.cpp
[  3%] Built target motion_version
Scanning dependencies of target motion
[  4%] Building CXX object src/motioncore/CMakeFiles/motion.dir/version.cpp.o
[  5%] Linking CXX static library ../../lib/libmotion.a
[ 72%] Built target motion
[ 72%] Building CXX object src/examples/aes128/CMakeFiles/aes128.dir/aes128_main.cpp.o
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp: In function ‘std::pair<boost::program_options::variables_map, bool> ParseProgramOptions(int, char**)’:
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:162:17: error: expected primary-expression before ‘parties’
  162 |     std::string parties("Other parties: ");
      |                 ^~~~~~~
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:162:17: error: expected ‘}’ before ‘parties’
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:160:49: note: to match this ‘{’
  160 |     const std::vector<std::string> other_parties{
      |                                                 ^
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:162:17: error: no matching function for call to ‘std::vector<std::__cxx11::basic_string<char> >::vector(<brace-enclosed initializer list>)’
  162 |     std::string parties("Other parties: ");
      |                 ^~~~~~~
In file included from /usr/include/c++/11/vector:67,
                 from /usr/include/c++/11/bits/random.h:34,
                 from /usr/include/c++/11/random:49,
                 from /home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:28:
/usr/include/c++/11/bits/stl_vector.h:653:9: note: candidate: ‘template<class _InputIterator, class> std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
  653 |         vector(_InputIterator __first, _InputIterator __last,
      |         ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:653:9: note:   template argument deduction/substitution failed:
/usr/include/c++/11/bits/stl_vector.h:625:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(std::initializer_list<_Tp>, const allocator_type&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
  625 |       vector(initializer_list<value_type> __l,
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:625:7: note:   conversion of argument 1 would be ill-formed:
/usr/include/c++/11/bits/stl_vector.h:607:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&, const allocator_type&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
  607 |       vector(vector&& __rv, const allocator_type& __m)
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:607:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/11/bits/stl_vector.h:589:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&, const allocator_type&, std::false_type) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >; std::false_type = std::integral_constant<bool, false>]’
  589 |       vector(vector&& __rv, const allocator_type& __m, false_type)
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:589:7: note:   candidate expects 3 arguments, 1 provided
/usr/include/c++/11/bits/stl_vector.h:585:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&, const allocator_type&, std::true_type) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >; std::true_type = std::integral_constant<bool, true>]’
  585 |       vector(vector&& __rv, const allocator_type& __m, true_type) noexcept
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:585:7: note:   candidate expects 3 arguments, 1 provided
/usr/include/c++/11/bits/stl_vector.h:575:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&, const allocator_type&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
  575 |       vector(const vector& __x, const allocator_type& __a)
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:575:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/11/bits/stl_vector.h:572:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
  572 |       vector(vector&&) noexcept = default;
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:572:7: note:   conversion of argument 1 would be ill-formed:
/usr/include/c++/11/bits/stl_vector.h:553:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
  553 |       vector(const vector& __x)
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:553:7: note:   conversion of argument 1 would be ill-formed:
/usr/include/c++/11/bits/stl_vector.h:522:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const value_type&, const allocator_type&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::value_type = std::__cxx11::basic_string<char>; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
  522 |       vector(size_type __n, const value_type& __value,
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:522:7: note:   candidate expects 3 arguments, 1 provided
/usr/include/c++/11/bits/stl_vector.h:510:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const allocator_type&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
  510 |       vector(size_type __n, const allocator_type& __a = allocator_type())
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:510:7: note:   conversion of argument 1 would be ill-formed:
/usr/include/c++/11/bits/stl_vector.h:497:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector(const allocator_type&) [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
  497 |       vector(const allocator_type& __a) _GLIBCXX_NOEXCEPT
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:497:7: note:   conversion of argument 1 would be ill-formed:
/usr/include/c++/11/bits/stl_vector.h:487:7: note: candidate: ‘std::vector<_Tp, _Alloc>::vector() [with _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
  487 |       vector() = default;
      |       ^~~~~~
/usr/include/c++/11/bits/stl_vector.h:487:7: note:   candidate expects 0 arguments, 1 provided
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:162:17: error: expected ‘,’ or ‘;’ before ‘parties’
  162 |     std::string parties("Other parties: ");
      |                 ^~~~~~~
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:165:20: error: ‘parties’ was not declared in this scope; did you mean ‘party’?
  165 |         if (print) parties.append(" " + party);
      |                    ^~~~~~~
      |                    party
/home/alien/motion/MOTION/src/examples/aes128/aes128_main.cpp:170:29: error: ‘parties’ was not declared in this scope
  170 |     if (print) std::cout << parties << std::endl;
      |                             ^~~~~~~
make[2]: *** [src/examples/aes128/CMakeFiles/aes128.dir/build.make:82: src/examples/aes128/CMakeFiles/aes128.dir/aes128_main.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:475: src/examples/aes128/CMakeFiles/aes128.dir/all] Error 2
make: *** [Makefile:149: all] Error 2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions