Open vincentng291 opened 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.
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 since
D' 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 ::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
I would say your compiler is compiling in C somehow.
please check your path variables
I just built Click and got this error I am using Ubuntu 16.04 and my settings is
Any way to fix it?