kohler / click

The Click modular router: fast modular packet processing and analysis
Other
740 stars 321 forks source link

Fail to build Click #367

Open vincentng291 opened 7 years ago

vincentng291 commented 7 years ago

I just built Click and got this error screenshot from 2017-09-11 11-55-29 I am using Ubuntu 16.04 and my settings is

./configure --disable-app-fuzzer --disable-app-performance --disable-app-sniffer --enable-app-tunnel --disable-app-stats --disable-doc --disable-doc-man --enable-local --enable-userlevel --enable-wifi --host=mips-unknown-elf --build=mips --prefix=/home/proyecto/openwrt/trunk/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/ --with-linux=/home/proyecto/openwrt/trunk/build_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/linux/

Any way to fix it?

pallas commented 7 years ago

Please post the full error log as text. It looks like maybe your compiler is choking on r-value references (C++11) but without the full log it's not really clear.

vincentng291 commented 7 years ago

Hi @pallas This is full error log. Thanks!

make[2]: Entering directory '/home/wrt/trunk/click/tools/lib' CXX ../../lib/string.cc CXX ../../lib/straccum.cc CXX ../../lib/glue.cc CXX ../../lib/bitvector.cc CXX ../../lib/hashallocator.cc CXX ../../lib/ipaddress.cc CXX ../../lib/etheraddress.cc CXX ../../lib/timestamp.cc CXX ../../lib/error.cc CXX elementt.cc CXX eclasst.cc CXX routert.cc CXX runparse.cc CXX ../../lib/variableenv.cc CXX landmarkt.cc CXX lexert.cc CXX lexertinfo.cc CXX ../../lib/driver.cc CXX ../../lib/confparse.cc CXX ../../lib/args.cc CXX ../../lib/archive.cc CXX processingt.cc CXX etraits.cc CXX elementmap.cc CXX ../../lib/userutils.cc CXX ../../lib/md5.cc CXX toolutils.cc CC ../../lib/clp.c AR libclicktool.a ar: u' modifier ignored sinceD' is the default (see `U') RANLIB libclicktool.a BUILDCXX ../../lib/string.cc In file included from ../../include/click/array_memory.hh:4:0, from ../../include/click/vector.hh:4, from ../../lib/string.cc:26: ../../include/click/type_traits.hh:25:5: warning: identifier ‘constexpr’ is a keyword in C++11 [-Wc++0x-compat] static constexpr T value = V; ^ In file included from ../../include/click/vector.hh:4:0, from ../../lib/string.cc:26: ../../include/click/array_memory.hh:13:2: warning: identifier ‘static_assert’ is a keyword in C++11 [-Wc++0x-compat] static_assert(sizeof(type) == s, "char_array<> size off"); ^ In file included from ../../lib/string.cc:23:0: ../../include/click/string.hh:41:25: error: expected ‘,’ or ‘...’ before ‘&&’ token inline String(String&& x); ^ ../../include/click/string.hh:41:29: error: invalid constructor; you probably meant ‘String (const String&)’ inline String(String&& x); ^ ../../include/click/string.hh:136:37: error: expected ‘,’ or ‘...’ before ‘&&’ token inline String &operator=(String &&x); ^ ../../include/click/string.hh:339:30: error: expected ‘,’ or ‘...’ before ‘&&’ token inline String::String(String &&x) ^ ../../include/click/string.hh:339:8: error: prototype for ‘String::String(String)’ does not match any in class ‘String’ inline String::String(String &&x) ^ ../../include/click/string.hh:262:12: error: candidates are: String::String(const char, int, String::memo_t) inline String(const char data, int length, memo_t memo) { ^ ../../include/click/string.hh:64:14: error: String::String(double) explicit String(double x); ^ ../../include/click/string.hh:57:14: error: String::String(long long unsigned int) explicit String(unsigned long long x); ^ ../../include/click/string.hh:56:14: error: String::String(long long int) explicit String(long long x); ^ ../../include/click/string.hh:54:14: error: String::String(long unsigned int) explicit String(unsigned long x); ^ ../../include/click/string.hh:53:14: error: String::String(long int) explicit String(long x); ^ ../../include/click/string.hh:52:14: error: String::String(unsigned int) explicit String(unsigned x); ^ ../../include/click/string.hh:51:14: error: String::String(int) explicit String(int x); ^ ../../include/click/string.hh:50:21: error: String::String(unsigned char) explicit inline String(unsigned char c); ^ ../../include/click/string.hh:49:21: error: String::String(char) explicit inline String(char c); ^ ../../include/click/string.hh:48:21: error: String::String(bool) explicit inline String(bool x); ^ ../../include/click/string.hh:47:12: error: String::String(const unsigned char, const unsigned char) inline String(const unsigned char first, const unsigned char last); ^ ../../include/click/string.hh:46:12: error: String::String(const char, const char) inline String(const char first, const char last); ^ ../../include/click/string.hh:45:12: error: String::String(const unsigned char, int) inline String(const unsigned char s, int len); ^ ../../include/click/string.hh:44:12: error: String::String(const char, int) inline String(const char s, int len); ^ ../../include/click/string.hh:43:12: error: String::String(const char) inline String(const char cstr); ^ ../../include/click/string.hh:333:8: error: String::String(const String&) inline String::String(const String &x) { ^ ../../include/click/string.hh:328:8: error: String::String() inline String::String() { ^ ../../include/click/string.hh:685:41: error: expected ‘,’ or ‘...’ before ‘&&’ token inline String &String::operator=(String &&x) { ^ ../../include/click/string.hh: In member function ‘String& String::operator=(String)’: ../../include/click/string.hh:687:10: error: ‘x’ was not declared in this scope _r = x._r; ^ In file included from ../../lib/string.cc:24:0: ../../include/click/straccum.hh: At global scope: ../../include/click/straccum.hh:40:36: error: expected ‘,’ or ‘...’ before ‘&&’ token inline StringAccum(StringAccum &&x); ^ ../../include/click/straccum.hh:40:39: error: invalid constructor; you probably meant ‘StringAccum (const StringAccum&)’ inline StringAccum(StringAccum &&x); ^ ../../include/click/straccum.hh:46:47: error: expected ‘,’ or ‘...’ before ‘&&’ token inline StringAccum &operator=(StringAccum &&x); ^ ../../include/click/straccum.hh:199:45: error: expected ‘,’ or ‘...’ before ‘&&’ token inline StringAccum::StringAccum(StringAccum &&x) ^ ../../include/click/straccum.hh:199:8: error: prototype for ‘StringAccum::StringAccum(StringAccum)’ does not match any in class ‘StringAccum’ inline StringAccum::StringAccum(StringAccum &&x) ^ ../../include/click/straccum.hh:193:8: error: candidates are: StringAccum::StringAccum(const StringAccum&) inline StringAccum::StringAccum(const StringAccum &x) { ^ ../../include/click/straccum.hh:188:8: error: StringAccum::StringAccum(const String&) inline StringAccum::StringAccum(const String &str) { ^ ../../include/click/straccum.hh:177:8: error: StringAccum::StringAccum(int) inline StringAccum::StringAccum(int capacity) { ^ ../../include/click/straccum.hh:167:8: error: StringAccum::StringAccum() inline StringAccum::StringAccum() { ^ ../../include/click/straccum.hh:498:56: error: expected ‘,’ or ‘...’ before ‘&&’ token inline StringAccum &StringAccum::operator=(StringAccum &&x) { ^ ../../include/click/straccum.hh: In member function ‘StringAccum& StringAccum::operator=(StringAccum)’: ../../include/click/straccum.hh:499:5: error: ‘x’ was not declared in this scope x.swap(*this); ^ In file included from ../../include/click/array_memory.hh:4:0, from ../../include/click/vector.hh:4, from ../../lib/string.cc:26: ../../include/click/type_traits.hh: At global scope: ../../include/click/type_traits.hh:25:12: error: ‘constexpr’ does not name a type static constexpr T value = V; ^ ../../include/click/type_traits.hh:25:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:27:28: error: ‘constexpr’ does not name a type template <typename T, T V> constexpr T integral_constant<T, V>::value; ^ ../../include/click/type_traits.hh:27:28: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:91:46: error: template argument 1 is invalid template struct is_reference<T&&> : public true_type {}; ^ ../../include/click/type_traits.hh:107:50: error: template argument 1 is invalid template struct remove_reference<T&&> { ^ ../../include/click/type_traits.hh:111:42: error: expected unqualified-id before ‘&&’ token inline typename remove_reference::type&& click_move(T&& x) { ^ ../../include/click/type_traits.hh:149:12: error: ‘constexpr’ does not name a type static constexpr bool is_reference = true; ^ ../../include/click/type_traits.hh:149:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:156:12: error: ‘constexpr’ does not name a type static constexpr bool is_reference = false; ^ ../../include/click/type_traits.hh:156:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:159:23: error: ‘constexpr’ does not name a type template constexpr bool fast_argument<T, true>::is_reference; ^ ../../include/click/type_traits.hh:159:23: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:160:23: error: ‘constexpr’ does not name a type template constexpr bool fast_argument<T, false>::is_reference; ^ ../../include/click/type_traits.hh:160:23: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:243:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = false; ^ ../../include/click/type_traits.hh:243:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:244:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = false; ^ ../../include/click/type_traits.hh:244:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:246:23: error: ‘constexpr’ does not name a type template constexpr bool integer_traits::is_numeric; ^ ../../include/click/type_traits.hh:246:23: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:247:23: error: ‘constexpr’ does not name a type template constexpr bool integer_traits::is_integral; ^ ../../include/click/type_traits.hh:247:23: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:251:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:251:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:252:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:252:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:253:12: error: ‘constexpr’ does not name a type static constexpr unsigned char const_min = 0; ^ ../../include/click/type_traits.hh:253:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:254:12: error: ‘constexpr’ does not name a type static constexpr unsigned char const_max = ~const_min; ^ ../../include/click/type_traits.hh:254:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:255:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = false; ^ ../../include/click/type_traits.hh:255:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:265:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:265:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:266:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:266:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:267:12: error: ‘constexpr’ does not name a type static constexpr signed char const_min = -128; ^ ../../include/click/type_traits.hh:267:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:268:12: error: ‘constexpr’ does not name a type static constexpr signed char const_max = 127; ^ ../../include/click/type_traits.hh:268:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:269:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = true; ^ ../../include/click/type_traits.hh:269:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:288:12: error: ‘constexpr’ does not name a type static constexpr char const_min = -128; ^ ../../include/click/type_traits.hh:288:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:289:12: error: ‘constexpr’ does not name a type static constexpr char const_max = 127; ^ ../../include/click/type_traits.hh:289:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:297:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:297:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:298:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:298:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:299:12: error: ‘constexpr’ does not name a type static constexpr unsigned short const_min = 0; ^ ../../include/click/type_traits.hh:299:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:300:12: error: ‘constexpr’ does not name a type static constexpr unsigned short const_max = ~const_min; ^ ../../include/click/type_traits.hh:300:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:301:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = false; ^ ../../include/click/type_traits.hh:301:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:311:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:311:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:312:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:312:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:313:12: error: ‘constexpr’ does not name a type static constexpr short const_min = -32768; ^ ../../include/click/type_traits.hh:313:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:314:12: error: ‘constexpr’ does not name a type static constexpr short const_max = 32767; ^ ../../include/click/type_traits.hh:314:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:315:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = true; ^ ../../include/click/type_traits.hh:315:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:325:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:325:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:326:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:326:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:327:12: error: ‘constexpr’ does not name a type static constexpr unsigned int const_min = 0; ^ ../../include/click/type_traits.hh:327:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:328:12: error: ‘constexpr’ does not name a type static constexpr unsigned int const_max = ~const_min; ^ ../../include/click/type_traits.hh:328:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:329:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = false; ^ ../../include/click/type_traits.hh:329:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:339:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:339:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:340:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:340:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:341:12: error: ‘constexpr’ does not name a type static constexpr int const_min = 1 << (8SIZEOF_INT - 1); ^ ../../include/click/type_traits.hh:341:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:342:12: error: ‘constexpr’ does not name a type static constexpr int const_max = (unsigned) const_min - 1; ^ ../../include/click/type_traits.hh:342:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:343:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = true; ^ ../../include/click/type_traits.hh:343:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:353:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:353:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:354:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:354:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:355:12: error: ‘constexpr’ does not name a type static constexpr unsigned long const_min = 0; ^ ../../include/click/type_traits.hh:355:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:356:12: error: ‘constexpr’ does not name a type static constexpr unsigned long const_max = ~const_min; ^ ../../include/click/type_traits.hh:356:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:357:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = false; ^ ../../include/click/type_traits.hh:357:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:367:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:367:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:368:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:368:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:369:12: error: ‘constexpr’ does not name a type static constexpr long const_min = (long) 1 << (8SIZEOF_LONG - 1); ^ ../../include/click/type_traits.hh:369:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:370:12: error: ‘constexpr’ does not name a type static constexpr long const_max = (unsigned long) const_min - 1; ^ ../../include/click/type_traits.hh:370:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:371:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = true; ^ ../../include/click/type_traits.hh:371:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:382:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:382:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:383:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:383:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:384:12: error: ‘constexpr’ does not name a type static constexpr unsigned long long const_min = 0; ^ ../../include/click/type_traits.hh:384:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:385:12: error: ‘constexpr’ does not name a type static constexpr unsigned long long const_max = ~const_min; ^ ../../include/click/type_traits.hh:385:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:386:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = false; ^ ../../include/click/type_traits.hh:386:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:396:12: error: ‘constexpr’ does not name a type static constexpr bool is_numeric = true; ^ ../../include/click/type_traits.hh:396:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:397:12: error: ‘constexpr’ does not name a type static constexpr bool is_integral = true; ^ ../../include/click/type_traits.hh:397:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:398:12: error: ‘constexpr’ does not name a type static constexpr long long const_min = (long long) 1 << (8SIZEOF_LONG_LONG ^ ../../include/click/type_traits.hh:398:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:399:12: error: ‘constexpr’ does not name a type static constexpr long long const_max = (unsigned long long) const_min - 1; ^ ../../include/click/type_traits.hh:399:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:400:12: error: ‘constexpr’ does not name a type static constexpr bool is_signed = true; ^ ../../include/click/type_traits.hh:400:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:470:12: error: ‘constexpr’ does not name a type static constexpr int half_bits = int(sizeof(type) 4); ^ ../../include/click/type_traits.hh:470:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh:471:12: error: ‘constexpr’ does not name a type static constexpr type half_value = type(1) << half_bits; ^ ../../include/click/type_traits.hh:471:12: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11 ../../include/click/type_traits.hh: In static member function ‘static make_fast_half_integer<T, Thalf>::half_type make_fast_half_integer<T, Thalf>::low(make_fast_half_integer<T, Thalf>::type)’: ../../include/click/type_traits.hh:473:14: error: ‘half_value’ was not declared in this scope return x & (half_value - 1); ^ In file included from ../../include/click/vector.hh:4:0, from ../../lib/string.cc:26: ../../include/click/array_memory.hh: In static member function ‘static sized_array_memory::type sized_array_memory::cast(T)’: ../../include/click/array_memory.hh:13:58: error: there are no arguments to ‘static_assert’ that depend on a template parameter, so a declaration of ‘static_assert’ must be available [-fpermissive] static_assert(sizeof(type) == s, "char_array<> size off"); ^ ../../include/click/array_memory.hh:13:58: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) In file included from ../../lib/string.cc:26:0: ../../include/click/vector.hh: At global scope: ../../include/click/vector.hh:141:29: error: expected ‘,’ or ‘...’ before ‘&&’ token inline Vector(Vector &&x); ^ ../../include/click/vector.hh:141:32: error: invalid constructor; you probably meant ‘Vector (const Vector&)’ inline Vector(Vector &&x); ^ ../../include/click/vector.hh:146:43: error: expected ‘,’ or ‘...’ before ‘&&’ token inline Vector &operator=(Vector &&x); ^ ../../include/click/vector.hh:183:60: error: expected ‘,’ or ‘...’ before ‘&&’ token inline typename A::enable_rvalue_reference push_back(T &&v); ^ ../../include/click/vector.hh:183:63: error: default template arguments may not be used in function templates without -std=c++11 or -std=gnu++11 inline typename A::enable_rvalue_reference push_back(T &&v); ^ ../../include/click/vector.hh:219:36: error: expected ‘,’ or ‘...’ before ‘&&’ token inline Vector::Vector(Vector &&x) { ^ ../../include/click/vector.hh:219:8: error: prototype for ‘Vector::Vector(Vector)’ does not match any in class ‘Vector’ inline Vector::Vector(Vector &&x) { ^ ../../include/click/vector.hh:212:8: error: candidates are: Vector::Vector(const Vector&) inline Vector::Vector(const Vector &x) { ^ ../../include/click/vector.hh:206:8: error: Vector::Vector(Vector::size_type, Vector::value_argument_type) inline Vector::Vector(size_type n, value_argument_type v) { ^ ../../include/click/vector.hh:201:8: error: Vector::Vector() inline Vector::Vector() { ^ ../../include/click/vector.hh:401:66: error: expected ‘,’ or ‘...’ before ‘&&’ token inline typename A::enable_rvalue_reference Vector::push_back(T&& v) ^ ../../include/click/vector.hh: In member function ‘typename A::enable_rvalue_reference Vector::pushback(T)’: ../../include/click/vector.hh:403:54: error: ‘v’ was not declared in this scope vm.move_construct_back(array_memorytype::cast(&v)); ^ ../../include/click/vector.hh: At global scope: ../../include/click/vector.hh:492:50: error: expected ‘,’ or ‘...’ before ‘&&’ token inline Vector &Vector::operator=(Vector &&x) { ^ ../../include/click/vector.hh: In member function ‘Vector& Vector::operator=(Vector)’: ../../include/click/vector.hh:493:14: error: ‘x’ was not declared in this scope vm.swap(x.vm_); ^ Makefile:68: recipe for target 'string.bo' failed make[2]: [string.bo] Error 1 make[2]: Leaving directory '/home/wrt/trunk/click/tools/lib' Makefile:26: recipe for target 'lib' failed make[1]: [lib] Error 2 make[1]: Leaving directory '/home/wrt/trunk/click/tools' Makefile:61: recipe for target 'tools' failed make: *** [tools] Error 2

tbarbette commented 6 years ago

I would say your compiler is compiling in C somehow.

peterrz commented 6 years ago

please check your path variables