[Click] Problem compiling samplepackage and own elements

Eddie Kohler kohler at cs.ucla.edu
Sat Apr 9 20:48:06 EDT 2011


Hi Sami,

I finally had some time to look into this more.  I updated the Click build 
process to remove many of these errors.  Unfortunately, a limitation in the 
Linux kernel's structures for symbol versioning will still prevent a package 
install.  You may need to recompile your kernel without CONFIG_MODVERSIONS.

Eddie


On 3/9/11 4:39 AM, Sami Ruponen wrote:
> Hi Eddie,
>
> I made some tests and here is the summary
>
> First of all for example the test.click and test-device.click work as
> expected. Samplepackage compiles and installs OK. It even works on
> userlevel. But when I try to start it using click-install test.click
> (from samplepackage) it gives error
>
> click: starting router thread pid 2203 (cdd10600)
> insmod: error inserting '/usr/local/lib/sample.ko': -1 Invalid parameters
> click-install: '/sbin/insmod /usr/local/lib/sample.ko' failed
>
> After that the dmesg gives
> ----------------------------
> [ 5153.484767] sample: no symbol version for _ZN7ElementD2Ev
> [ 5153.484794] sample: Unknown symbol _ZN7ElementD2Ev (err -22)
> [ 5153.486739] sample: no symbol version for
> _ZN7Element16live_reconfigureER6VectorI6StringEP12ErrorHandler
> [ 5153.486768] sample: Unknown symbol
> _ZN7Element16live_reconfigureER6VectorI6StringEP12ErrorHandler (err
> -22)
> [ 5153.488540] sample: no symbol version for click_remove_element_type
> [ 5153.488562] sample: Unknown symbol click_remove_element_type (err -22)
> [ 5153.490578] sample: no symbol version for _ZN7Element4pushEiP6Packet
> [ 5153.490601] sample: Unknown symbol _ZN7Element4pushEiP6Packet (err -22)
> [ 5153.495255] sample: no symbol version for _ZN7Element8run_taskEv
> [ 5153.495283] sample: Unknown symbol _ZN7Element8run_taskEv (err -22)
> [ 5153.497208] sample: no symbol version for _ZN7Element8run_taskEP4Task
> [ 5153.497230] sample: Unknown symbol _ZN7Element8run_taskEP4Task (err -22)
> [ 5153.499144] sample: no symbol version for _ZN7Element9run_timerEP5Timer
> [ 5153.499167] sample: Unknown symbol _ZN7Element9run_timerEP5Timer (err -22)
> [ 5153.501160] sample: no symbol version for
> _ZNK7Element20can_live_reconfigureEv
> [ 5153.501185] sample: Unknown symbol
> _ZNK7Element20can_live_reconfigureEv (err -22)
> [ 5153.505159] sample: no symbol version for _ZdlPv
> [ 5153.505183] sample: Unknown symbol _ZdlPv (err -22)
> [ 5153.507067] sample: no symbol version for _ZNK7Element9flow_codeEv
> [ 5153.507090] sample: Unknown symbol _ZNK7Element9flow_codeEv (err -22)
> [ 5153.509015] sample: no symbol version for _ZNK7Element10processingEv
> [ 5153.509038] sample: Unknown symbol _ZNK7Element10processingEv (err -22)
> [ 5153.511028] sample: no symbol version for _ZN7Element4castEPKc
> [ 5153.511050] sample: Unknown symbol _ZN7Element4castEPKc (err -22)
> [ 5153.514904] sample: no symbol version for click_provide
> [ 5153.514930] sample: Unknown symbol click_provide (err -22)
> [ 5153.516861] sample: no symbol version for _ZNK7Element15hotswap_elementEv
> [ 5153.516884] sample: Unknown symbol _ZNK7Element15hotswap_elementEv (err -22)
> [ 5153.518808] sample: no symbol version for _ZN7Element5llrpcEjPv
> [ 5153.518830] sample: Unknown symbol _ZN7Element5llrpcEjPv (err -22)
> [ 5153.520806] sample: no symbol version for _ZN7Element9run_timerEv
> [ 5153.520827] sample: Unknown symbol _ZN7Element9run_timerEv (err -22)
> [ 5153.524853] sample: no symbol version for _ZNK7Element15configure_phaseEv
> [ 5153.524881] sample: Unknown symbol _ZNK7Element15configure_phaseEv (err -22)
> [ 5153.526648] sample: no symbol version for click_add_element_type
> [ 5153.526670] sample: Unknown symbol click_add_element_type (err -22)
> [ 5153.528629] sample: no symbol version for _ZNK7Element5flagsEv
> [ 5153.528650] sample: Unknown symbol _ZNK7Element5flagsEv (err -22)
> [ 5153.530385] sample: no symbol version for click_unprovide
> [ 5153.530406] sample: Unknown symbol click_unprovide (err -22)
> [ 5153.534343] sample: no symbol version for _ZN7ElementC2Ev
> [ 5153.534370] sample: Unknown symbol _ZN7ElementC2Ev (err -22)
> [ 5153.536316] sample: no symbol version for
> _ZN7Element10take_stateEPS_P12ErrorHandler
> [ 5153.536341] sample: Unknown symbol
> _ZN7Element10take_stateEPS_P12ErrorHandler (err -22)
> [ 5153.538270] sample: no symbol version for _ZN7Element4pullEi
> [ 5153.538290] sample: Unknown symbol _ZN7Element4pullEi (err -22)
> [ 5153.540264] sample: no symbol version for
> _ZN7Element9configureER6VectorI6StringEP12ErrorHandler
> [ 5153.540291] sample: Unknown symbol
> _ZN7Element9configureER6VectorI6StringEP12ErrorHandler (err -22)
> [ 5153.544400] sample: no symbol version for
> _ZN7Element7cleanupENS_12CleanupStageE
> [ 5153.544429] sample: Unknown symbol
> _ZN7Element7cleanupENS_12CleanupStageE (err -22)
> [ 5153.546380] sample: no symbol version for _ZN7Element13simple_actionEP6Packet
> [ 5153.546405] sample: Unknown symbol
> _ZN7Element13simple_actionEP6Packet (err -22)
> [ 5153.548335] sample: no symbol version for _ZNK7Element11declarationEv
> [ 5153.548359] sample: Unknown symbol _ZNK7Element11declarationEv (err -22)
> [ 5153.550159] sample: no symbol version for _Znwj
> [ 5153.550178] sample: Unknown symbol _Znwj (err -22)
> [ 5153.554130] sample: no symbol version for _ZN7Element12add_handlersEv
> [ 5153.554157] sample: Unknown symbol _ZN7Element12add_handlersEv (err -22)
> [ 5153.556086] sample: no symbol version for _ZN7Element9port_castEbiPKc
> [ 5153.556110] sample: Unknown symbol _ZN7Element9port_castEbiPKc (err -22)
> [ 5153.558032] sample: no symbol version for _ZNK7Element10port_countEv
> [ 5153.558055] sample: Unknown symbol _ZNK7Element10port_countEv (err -22)
> [ 5153.559964] sample: no symbol version for _ZN12ErrorHandler7messageEPKcz
> [ 5153.559988] sample: Unknown symbol _ZN12ErrorHandler7messageEPKcz (err -22)
> ----------------------------
>
> I have checked that click.ko for example includes symbol
> _ZN7ElementD2Ev first in the list
>
> ----------------------------
> $ grep _ZN7ElementD2Ev /usr/local/lib/click.ko
> Binary file /usr/local/lib/click.ko matches
> ----------------------------
>
> But on the otherhand it is not found in /sys/module/click/sections/
> directory. I don't know if this is a proper place to look for it?
>
> ----------------------------
> $ ll /sys/module/click/sections/|grep Element
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV11NullElement
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV12ErrorElement
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV13ElementFilter
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV14ElementTracker
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV14MessageElement
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV15PullNullElement
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV15PushNullElement
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV17CastElementFilter
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV18ElementCastTracker
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .rodata._ZTV26ElementNeighborhoodTracker
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .rodata._ZTV7Element
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN13ElementFilterD0Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN13ElementFilterD1Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN14ElementTrackerD0Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN14ElementTrackerD1Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN17CastElementFilterD0Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN17CastElementFilterD1Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN18ElementCastTrackerD0Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZN18ElementCastTrackerD1Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZN26ElementNeighborhoodTrackerD0Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZN26ElementNeighborhoodTrackerD1Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZN6VectorIN5Lexer11ElementTypeEE9push_backERKS1_
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZN6VectorIN5Lexer11ElementTypeEED1Ev
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZNK11NullElement10class_nameEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZNK11NullElement10port_countEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZNK11NullElement10processingEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZNK12ErrorElement10class_nameEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZNK12ErrorElement10port_countEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZNK12ErrorElement10processingEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48 .text._ZNK12ErrorElement9flow_codeEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZNK14MessageElement10class_nameEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZNK15PullNullElement10class_nameEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZNK15PullNullElement10port_countEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZNK15PullNullElement10processingEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZNK15PushNullElement10class_nameEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZNK15PushNullElement10port_countEv
> -r--r--r-- 1 root root 4096 Mar  7 16:48
> .text._ZNK15PushNullElement10processingEv
> ----------------------------
>
> I'm not sure what is wrong but for the best my knowledge I have
> followed the same steps that I have used with 2.6.24 kernel and there
> everything worked. I can do some more tests if needed, just give me
> instructions what to do.
>
> Regards,
>
> Sami Ruponen
>
> 2011/3/3 Eddie Kohler<kohler at cs.ucla.edu>:
>> Hi Sami,
>>
>> Click packages were not supported on patchless linuxmodule installs.
>>
>> However, I have just changed the build system to support packages on patchless
>> linuxmodule installs.  Does it work for you?
>>
>> Eddie
>>
>>
>>
>> On 03/02/2011 02:20 AM, Sami Ruponen wrote:
>>> Hi,
>>>
>>> Does anyone have a suggestion of what is wrong or does someone else
>>> have same symptoms. I have successfully (I hope) configured, compiled
>>> and installed patchless click for kernel 2.6.37 (with the help of
>>> patches from Joonwoo). The problem is that when I try to compile the
>>> samplepackage (and also my own elements) it gives these error
>>> messages. The same errors is given with 2.6.32 kernel also. Userlevel
>>> samplepackage and elements compile OK.
>>>
>>> The "click-install conf/test.click" seems to work OK. Am I missing
>>> something relevant
>>>
>>> =========================
>>> make[1]: Entering directory `/work/git/click/etc/samplepackage'
>>> { ( make -C /usr/src/linux-headers-2.6.37-7-generic
>>> M=/work/git/click/etc/samplepackage
>>> CLICK_PACKAGE_MAKING=linuxmodule-26 modules 2>&1 1>&3; echo $?>
>>> .sample.ko.status ) | grep -iv '^[\* ]*Warning:.*undefined' 1>&2; }
>>> 3>&1; v=`cat .sample.ko.status`; rm .sample.ko.status; exit $v
>>> make[2]: Entering directory `/usr/src/linux-headers-2.6.37-7-generic'
>>>     CXX [M] sampleelt.ko
>>> In file included from /usr/local/include/click/config.h:203,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:20:
>>> /usr/local/include/click/config-linuxmodule.h:172:29: error:
>>> linux/autoconf.h: No such file or directory
>>> In file included from /usr/local/include/click/element.hh:4,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/click/glue.hh:25:27: error: linux/skbuff.h: No such
>>> file or directory
>>> /usr/local/include/click/glue.hh:31:29: error: linux/hardirq.h: No
>>> such file or directory
>>> /usr/local/include/click/glue.hh:33:26: error: linux/ctype.h: No such
>>> file or directory
>>> In file included from /usr/local/include/click/ipaddress.hh:6,
>>>                    from /usr/local/include/click/packet.hh:4,
>>>                    from /usr/local/include/click/element.hh:7,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/clicknet/ip.h:8:27: error: net/checksum.h: No such
>>> file or directory
>>> In file included from /usr/local/include/click/config.h:203,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:20:
>>> /usr/local/include/click/config-linuxmodule.h:184: error: ‘ptrdiff_t’
>>> does not name a type
>>> /usr/local/include/click/config-linuxmodule.h:199: error: declaration
>>> of ‘operator new’ as non-function
>>> /usr/local/include/click/config-linuxmodule.h:199: error: ‘size_t’ was
>>> not declared in this scope
>>> /usr/local/include/click/config-linuxmodule.h:200: error: declaration
>>> of ‘operator new []’ as non-function
>>> /usr/local/include/click/config-linuxmodule.h:200: error: ‘size_t’ was
>>> not declared in this scope
>>> /usr/local/include/click/config-linuxmodule.h:203: error: declaration
>>> of ‘operator new’ as non-function
>>> /usr/local/include/click/config-linuxmodule.h:203: error: ‘size_t’ was
>>> not declared in this scope
>>> /usr/local/include/click/config-linuxmodule.h:203: error: expected
>>> primary-expression before ‘void’
>>> In file included from /usr/local/include/click/element.hh:4,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/click/glue.hh:116: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/glue.hh:121: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/glue.hh:124: error: variable or field
>>> ‘click_srandom’ declared void
>>> /usr/local/include/click/glue.hh:124: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/glue.hh:136: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/glue.hh:139: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/glue.hh:152: error: variable or field
>>> ‘click_srandom’ declared void
>>> /usr/local/include/click/glue.hh:152: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/glue.hh: In function ‘long unsigned int
>>> strtoul(const char*, char**, int)’:
>>> /usr/local/include/click/glue.hh:245: error: ‘simple_strtoul’ was not
>>> declared in this scope
>>> /usr/local/include/click/glue.hh: At global scope:
>>> /usr/local/include/click/glue.hh:300: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/glue.hh:307: error: ‘click_processor_t’ does
>>> not name a type
>>> /usr/local/include/click/glue.hh: In function ‘void click_put_processor()’:
>>> /usr/local/include/click/glue.hh:331: error: ‘put_cpu’ was not
>>> declared in this scope
>>> /usr/local/include/click/glue.hh: At global scope:
>>> /usr/local/include/click/glue.hh:337: error: ‘click_processor_t’ does
>>> not name a type
>>> /usr/local/include/click/glue.hh:353: error: ‘click_processor_t’ does
>>> not name a type
>>> /usr/local/include/click/glue.hh:568: error: ‘uint64_t’ does not name a type
>>> /usr/local/include/click/glue.hh:573: error: ‘click_cycles_t’ does not
>>> name a type
>>> In file included from /usr/local/include/click/string.hh:5,
>>>                    from /usr/local/include/click/element.hh:6,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/click/atomic.hh:57: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:58: error: expected type-specifier
>>> before ‘uint32_t’
>>> /usr/local/include/click/atomic.hh:60: error: declaration of
>>> ‘operator=’ as non-function
>>> /usr/local/include/click/atomic.hh:60: error: expected ‘;’ before ‘(’ token
>>> /usr/local/include/click/atomic.hh:62: error: declaration of
>>> ‘operator+=’ as non-function
>>> /usr/local/include/click/atomic.hh:62: error: expected ‘;’ before ‘(’ token
>>> /usr/local/include/click/atomic.hh:63: error: declaration of
>>> ‘operator-=’ as non-function
>>> /usr/local/include/click/atomic.hh:63: error: expected ‘;’ before ‘(’ token
>>> /usr/local/include/click/atomic.hh:64: error: declaration of
>>> ‘operator|=’ as non-function
>>> /usr/local/include/click/atomic.hh:64: error: expected ‘;’ before ‘(’ token
>>> /usr/local/include/click/atomic.hh:65: error: declaration of
>>> ‘operator&=’ as non-function
>>> /usr/local/include/click/atomic.hh:65: error: expected ‘;’ before ‘(’ token
>>> /usr/local/include/click/atomic.hh:72: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:73: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:75: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:76: error: ‘uint32_t’ has not been declared
>>> /usr/local/include/click/atomic.hh:76: error: ‘uint32_t’ has not been declared
>>> /usr/local/include/click/atomic.hh:78: error: expected ‘,’ or ‘...’
>>> before ‘&’ token
>>> /usr/local/include/click/atomic.hh:79: error: expected ‘,’ or ‘...’
>>> before ‘&’ token
>>> /usr/local/include/click/atomic.hh:80: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:81: error: expected ‘,’ or ‘...’
>>> before ‘&’ token
>>> /usr/local/include/click/atomic.hh:86: error: ‘atomic_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:96: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:108: error: expected type-specifier
>>> before ‘uint32_t’
>>> /usr/local/include/click/atomic.hh:115: error: declaration of
>>> ‘operator=’ as non-function
>>> /usr/local/include/click/atomic.hh:115: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:127: error: declaration of
>>> ‘operator+=’ as non-function
>>> /usr/local/include/click/atomic.hh:127: error: ‘int32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:144: error: declaration of
>>> ‘operator-=’ as non-function
>>> /usr/local/include/click/atomic.hh:144: error: ‘int32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:161: error: declaration of
>>> ‘operator|=’ as non-function
>>> /usr/local/include/click/atomic.hh:161: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:184: error: declaration of
>>> ‘operator&=’ as non-function
>>> /usr/local/include/click/atomic.hh:184: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:207: error: expected ‘,’ or ‘...’
>>> before ‘&’ token
>>> /usr/local/include/click/atomic.hh: In static member function ‘static
>>> void atomic_uint32_t::inc(int)’:
>>> /usr/local/include/click/atomic.hh:210: error: ‘atomic_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:210: error: ‘x’ was not declared in
>>> this scope
>>> /usr/local/include/click/atomic.hh:211: error: ‘atomic_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:211: error: expected
>>> primary-expression before ‘)’ token
>>> /usr/local/include/click/atomic.hh:211: error: ‘x’ was not declared in
>>> this scope
>>> /usr/local/include/click/atomic.hh:211: error: ‘atomic_inc’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh: In member function ‘void
>>> atomic_uint32_t::operator++()’:
>>> /usr/local/include/click/atomic.hh:227: error: ‘_val’ was not declared
>>> in this scope
>>> /usr/local/include/click/atomic.hh:227: error: ‘atomic_inc’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh: In member function ‘void
>>> atomic_uint32_t::operator++(int)’:
>>> /usr/local/include/click/atomic.hh:243: error: ‘_val’ was not declared
>>> in this scope
>>> /usr/local/include/click/atomic.hh:243: error: ‘atomic_inc’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh: In member function ‘void
>>> atomic_uint32_t::operator--()’:
>>> /usr/local/include/click/atomic.hh:259: error: ‘_val’ was not declared
>>> in this scope
>>> /usr/local/include/click/atomic.hh:259: error: ‘atomic_dec’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh: In member function ‘void
>>> atomic_uint32_t::operator--(int)’:
>>> /usr/local/include/click/atomic.hh:275: error: ‘_val’ was not declared
>>> in this scope
>>> /usr/local/include/click/atomic.hh:275: error: ‘atomic_dec’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh: At global scope:
>>> /usr/local/include/click/atomic.hh:296: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:324: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:359: error: expected ‘,’ or ‘...’
>>> before ‘&’ token
>>> /usr/local/include/click/atomic.hh: In static member function ‘static
>>> bool atomic_uint32_t::dec_and_test(int)’:
>>> /usr/local/include/click/atomic.hh:362: error: ‘atomic_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:362: error: ‘x’ was not declared in
>>> this scope
>>> /usr/local/include/click/atomic.hh:363: error: ‘atomic_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:363: error: expected
>>> primary-expression before ‘)’ token
>>> /usr/local/include/click/atomic.hh:363: error: ‘x’ was not declared in
>>> this scope
>>> /usr/local/include/click/atomic.hh:363: error: ‘atomic_dec_and_test’
>>> was not declared in this scope
>>> /usr/local/include/click/atomic.hh: At global scope:
>>> /usr/local/include/click/atomic.hh:392: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:439: error: expected ‘,’ or ‘...’
>>> before ‘&’ token
>>> /usr/local/include/click/atomic.hh: In static member function ‘static
>>> bool atomic_uint32_t::compare_and_swap(int)’:
>>> /usr/local/include/click/atomic.hh:443: error: ‘x’ was not declared in
>>> this scope
>>> /usr/local/include/click/atomic.hh:443: error: ‘expected’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:444: error: ‘desired’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:446: error: ‘uint8_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:446: error: expected ‘;’ before ‘expected’
>>> /usr/local/include/click/atomic.hh: In member function ‘bool
>>> atomic_uint32_t::dec_and_test()’:
>>> /usr/local/include/click/atomic.hh:478: error: ‘_val’ was not declared
>>> in this scope
>>> /usr/local/include/click/atomic.hh:478: error: ‘atomic_dec_and_test’
>>> was not declared in this scope
>>> /usr/local/include/click/atomic.hh: At global scope:
>>> /usr/local/include/click/atomic.hh:506: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/atomic.hh:551: error:
>>> ‘atomic_uint32_t::compare_and_swap’ declared as an ‘inline’ variable
>>> /usr/local/include/click/atomic.hh:551: error: ‘bool
>>> atomic_uint32_t::compare_and_swap’ is not a static member of ‘class
>>> atomic_uint32_t’
>>> /usr/local/include/click/atomic.hh:551: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:551: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/atomic.hh:552: error: expected ‘,’ or ‘;’
>>> before ‘{’ token
>>> /usr/local/include/click/atomic.hh:579: error: expected initializer
>>> before ‘operator’
>>> /usr/local/include/click/atomic.hh:585: error: expected initializer
>>> before ‘operator’
>>> /usr/local/include/click/atomic.hh: In function ‘bool operator==(const
>>> atomic_uint32_t&, const atomic_uint32_t&)’:
>>> /usr/local/include/click/atomic.hh:593: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh:593: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh: In function ‘bool operator!=(const
>>> atomic_uint32_t&, const atomic_uint32_t&)’:
>>> /usr/local/include/click/atomic.hh:599: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh:599: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh: In function ‘bool operator>(const
>>> atomic_uint32_t&, const atomic_uint32_t&)’:
>>> /usr/local/include/click/atomic.hh:605: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh:605: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh: In function ‘bool operator<(const
>>> atomic_uint32_t&, const atomic_uint32_t&)’:
>>> /usr/local/include/click/atomic.hh:611: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh:611: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh: In function ‘bool operator>=(const
>>> atomic_uint32_t&, const atomic_uint32_t&)’:
>>> /usr/local/include/click/atomic.hh:617: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh:617: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh: In function ‘bool operator<=(const
>>> atomic_uint32_t&, const atomic_uint32_t&)’:
>>> /usr/local/include/click/atomic.hh:623: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> /usr/local/include/click/atomic.hh:623: error: ‘const class
>>> atomic_uint32_t’ has no member named ‘value’
>>> In file included from /usr/local/include/click/element.hh:6,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/click/string.hh: At global scope:
>>> /usr/local/include/click/string.hh:176: error: ‘int64_t’ does not name a type
>>> /usr/local/include/click/string.hh:177: error: ‘uint64_t’ does not name a type
>>> /usr/local/include/click/string.hh:190: error: ‘int_large_t’ has not
>>> been declared
>>> /usr/local/include/click/string.hh:192: error: ‘uint_large_t’ has not
>>> been declared
>>> /usr/local/include/click/string.hh:192: error: ‘static String
>>> String::make_numeric(int, int, bool)’ cannot be overloaded
>>> /usr/local/include/click/string.hh:190: error: with ‘static String
>>> String::make_numeric(int, int, bool)’
>>> /usr/local/include/click/string.hh:199: error: ‘int_large_t’ has not
>>> been declared
>>> /usr/local/include/click/string.hh:200: error: ‘uint_large_t’ has not
>>> been declared
>>> /usr/local/include/click/string.hh:200: error: ‘static String
>>> String::numeric_string(int, int, bool)’ cannot be overloaded
>>> /usr/local/include/click/string.hh:199: error: with ‘static String
>>> String::numeric_string(int, int, bool)’
>>> /usr/local/include/click/string.hh:312: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/string.hh:315: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/string.hh:327: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/string.hh:639: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/string.hh:640: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/string.hh:641: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/string.hh:650: error: expected
>>> primary-expression before ‘,’ token
>>> /usr/local/include/click/string.hh:650: error: ‘real_data’ was not
>>> declared in this scope
>>> /usr/local/include/click/string.hh:650: error: a function call cannot
>>> appear in a constant-expression
>>> /usr/local/include/click/string.hh: In member function ‘const char*
>>> String::c_str() const’:
>>> /usr/local/include/click/string.hh:292: error: ‘struct String::memo_t’
>>> has no member named ‘dirty’
>>> /usr/local/include/click/string.hh: In member function ‘String&
>>> String::operator=(const String&)’:
>>> /usr/local/include/click/string.hh:508: error: ‘likely’ was not
>>> declared in this scope
>>> /usr/local/include/click/string.hh: In member function ‘bool
>>> String::data_shared() const’:
>>> /usr/local/include/click/string.hh:587: error: ‘struct String::memo_t’
>>> has no member named ‘refcount’
>>> make[2]: Leaving directory `/usr/src/linux-headers-2.6.37-7-generic'
>>> /usr/local/include/click/string.hh: In member function ‘String
>>> String::compact() const’:
>>> /usr/local/include/click/string.hh:595: error: ‘struct String::memo_t’
>>> has no member named ‘refcount’
>>> /usr/local/include/click/string.hh:596: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/string.hh:596: error: expected ‘)’ before ‘_r’
>>> /usr/local/include/click/string.hh: In member function ‘void
>>> String::assign_memo(const char*, int, String::memo_t*) const’:
>>> /usr/local/include/click/string.hh:709: error: ‘struct String::memo_t’
>>> has no member named ‘refcount’
>>> /usr/local/include/click/string.hh: In member function ‘void
>>> String::deref() const’:
>>> /usr/local/include/click/string.hh:721: error: ‘struct String::memo_t’
>>> has no member named ‘refcount’
>>> /usr/local/include/click/string.hh: At global scope:
>>> /usr/local/include/click/string.hh:773: error:
>>> ‘String::numeric_string’ declared as an ‘inline’ variable
>>> /usr/local/include/click/string.hh:773: error: ‘String
>>> String::numeric_string’ is not a static member of ‘class String’
>>> /usr/local/include/click/string.hh:773: error: ‘int_large_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/string.hh:773: error: expected
>>> primary-expression before ‘int’
>>> /usr/local/include/click/string.hh:773: error: expected
>>> primary-expression before ‘bool’
>>> /usr/local/include/click/string.hh:773: error: expected ‘,’ or ‘;’
>>> before ‘{’ token
>>> /usr/local/include/click/string.hh:778: error:
>>> ‘String::numeric_string’ declared as an ‘inline’ variable
>>> /usr/local/include/click/string.hh:778: error: ‘String
>>> String::numeric_string’ is not a static member of ‘class String’
>>> /usr/local/include/click/string.hh:778: error: ‘uint_large_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/string.hh:778: error: expected
>>> primary-expression before ‘int’
>>> /usr/local/include/click/string.hh:778: error: expected
>>> primary-expression before ‘bool’
>>> /usr/local/include/click/string.hh:778: error: expected ‘,’ or ‘;’
>>> before ‘{’ token
>>> In file included from /usr/local/include/clicknet/ip.h:9,
>>>                    from /usr/local/include/click/ipaddress.hh:6,
>>>                    from /usr/local/include/click/packet.hh:4,
>>>                    from /usr/local/include/click/element.hh:7,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/include/linux/in.h:188: error: ‘sa_family_t’ does not name a type
>>> In file included from /usr/local/include/click/ipaddress.hh:6,
>>>                    from /usr/local/include/click/packet.hh:4,
>>>                    from /usr/local/include/click/element.hh:7,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/clicknet/ip.h:33: error: ‘uint8_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:40: error: ‘uint16_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:41: error: ‘uint16_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:42: error: ‘uint16_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:47: error: ‘uint8_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:48: error: ‘uint8_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:49: error: ‘uint16_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:139: error: ‘uint16_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:140: error: variable or field
>>> ‘click_update_zero_in_cksum_hard’ declared void
>>> /usr/local/include/clicknet/ip.h:140: error: ‘uint16_t’ was not
>>> declared in this scope
>>> /usr/local/include/clicknet/ip.h:140: error: ‘csum’ was not declared
>>> in this scope
>>> /usr/local/include/clicknet/ip.h:140: error: expected
>>> primary-expression before ‘const’
>>> /usr/local/include/clicknet/ip.h:140: error: expected
>>> primary-expression before ‘int’
>>> /usr/local/include/clicknet/ip.h:150: error: ‘uint16_t’ does not name a type
>>> /usr/local/include/clicknet/ip.h:176: error: variable or field
>>> ‘click_update_in_cksum’ declared void
>>> /usr/local/include/clicknet/ip.h:176: error: ‘uint16_t’ was not
>>> declared in this scope
>>> /usr/local/include/clicknet/ip.h:176: error: ‘csum’ was not declared
>>> in this scope
>>> /usr/local/include/clicknet/ip.h:176: error: ‘uint16_t’ was not
>>> declared in this scope
>>> /usr/local/include/clicknet/ip.h:176: error: ‘uint16_t’ was not
>>> declared in this scope
>>> /usr/local/include/clicknet/ip.h:195: error: variable or field
>>> ‘click_update_zero_in_cksum’ declared void
>>> /usr/local/include/clicknet/ip.h:195: error: ‘uint16_t’ was not
>>> declared in this scope
>>> /usr/local/include/clicknet/ip.h:195: error: ‘csum’ was not declared
>>> in this scope
>>> /usr/local/include/clicknet/ip.h:195: error: expected
>>> primary-expression before ‘const’
>>> /usr/local/include/clicknet/ip.h:195: error: expected
>>> primary-expression before ‘int’
>>> In file included from /usr/local/include/click/packet.hh:4,
>>>                    from /usr/local/include/click/element.hh:7,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/click/ipaddress.hh:82: error: expected identifier
>>> before ‘*’ token
>>> /usr/local/include/click/ipaddress.hh:82: error: ‘uint32_t’ declared
>>> as function returning a function
>>> /usr/local/include/click/ipaddress.hh:84: error: expected
>>> type-specifier before ‘unspecified_bool_type’
>>> /usr/local/include/click/ipaddress.hh:95: error: ‘uint32_t’ does not name a type
>>> /usr/local/include/click/ipaddress.hh:96: error: expected
>>> type-specifier before ‘uint32_t’
>>> /usr/local/include/click/ipaddress.hh:104: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/ipaddress.hh:136: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/ipaddress.hh: In constructor ‘IPAddress::IPAddress()’:
>>> /usr/local/include/click/ipaddress.hh:17: error: class ‘IPAddress’
>>> does not have any field named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In constructor
>>> ‘IPAddress::IPAddress(unsigned int)’:
>>> /usr/local/include/click/ipaddress.hh:22: error: class ‘IPAddress’
>>> does not have any field named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In constructor
>>> ‘IPAddress::IPAddress(int)’:
>>> /usr/local/include/click/ipaddress.hh:26: error: class ‘IPAddress’
>>> does not have any field named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In constructor
>>> ‘IPAddress::IPAddress(long unsigned int)’:
>>> /usr/local/include/click/ipaddress.hh:30: error: class ‘IPAddress’
>>> does not have any field named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In constructor
>>> ‘IPAddress::IPAddress(long int)’:
>>> /usr/local/include/click/ipaddress.hh:34: error: class ‘IPAddress’
>>> does not have any field named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In constructor
>>> ‘IPAddress::IPAddress(in_addr)’:
>>> /usr/local/include/click/ipaddress.hh:39: error: class ‘IPAddress’
>>> does not have any field named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In constructor
>>> ‘IPAddress::IPAddress(const unsigned char*)’:
>>> /usr/local/include/click/ipaddress.hh:48: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh: In member function ‘bool
>>> IPAddress::is_multicast() const’:
>>> /usr/local/include/click/ipaddress.hh:92: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh:92: error: ‘htonl’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh: At global scope:
>>> /usr/local/include/click/ipaddress.hh:143: error: expected
>>> type-specifier before ‘uint32_t’
>>> /usr/local/include/click/ipaddress.hh:149: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/ipaddress.hh: In function ‘bool
>>> operator==(IPAddress, IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:160: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:160: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: At global scope:
>>> /usr/local/include/click/ipaddress.hh:169: error: ‘uint32_t’ has not
>>> been declared
>>> /usr/local/include/click/ipaddress.hh: In function ‘bool
>>> operator==(IPAddress, int)’:
>>> /usr/local/include/click/ipaddress.hh:171: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In function ‘bool
>>> operator!=(IPAddress, IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:179: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:179: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: At global scope:
>>> /usr/local/include/click/ipaddress.hh:188: error: ‘uint32_t’ has not
>>> been declared
>>> /usr/local/include/click/ipaddress.hh: In function ‘bool
>>> operator!=(IPAddress, int)’:
>>> /usr/local/include/click/ipaddress.hh:190: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In member function ‘const
>>> unsigned char* IPAddress::data() const’:
>>> /usr/local/include/click/ipaddress.hh:200: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh: In member function ‘unsigned
>>> char* IPAddress::data()’:
>>> /usr/local/include/click/ipaddress.hh:210: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh: In member function ‘in_addr
>>> IPAddress::in_addr() const’:
>>> /usr/local/include/click/ipaddress.hh:218: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh: In member function ‘bool
>>> IPAddress::matches_prefix(IPAddress, IPAddress) const’:
>>> /usr/local/include/click/ipaddress.hh:241: error: ‘const class
>>> IPAddress’ has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:241: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:241: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In member function ‘bool
>>> IPAddress::mask_as_specific(IPAddress) const’:
>>> /usr/local/include/click/ipaddress.hh:256: error: ‘addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh:256: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:256: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In member function ‘bool
>>> IPAddress::mask_more_specific(IPAddress) const’:
>>> /usr/local/include/click/ipaddress.hh:270: error: ‘addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh:270: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:270: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In function ‘IPAddress
>>> operator&(IPAddress, IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:279: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:279: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In member function ‘IPAddress&
>>> IPAddress::operator&=(IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:286: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh:286: error: ‘class IPAddress’
>>> has no member named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In function ‘IPAddress
>>> operator|(IPAddress, IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:296: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:296: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In member function ‘IPAddress&
>>> IPAddress::operator|=(IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:303: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh:303: error: ‘class IPAddress’
>>> has no member named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In function ‘IPAddress
>>> operator^(IPAddress, IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:313: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh:313: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: In member function ‘IPAddress&
>>> IPAddress::operator^=(IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:320: error: ‘_addr’ was not
>>> declared in this scope
>>> /usr/local/include/click/ipaddress.hh:320: error: ‘class IPAddress’
>>> has no member named ‘_addr’
>>> /usr/local/include/click/ipaddress.hh: In function ‘IPAddress
>>> operator~(IPAddress)’:
>>> /usr/local/include/click/ipaddress.hh:330: error: ‘class IPAddress’
>>> has no member named ‘addr’
>>> /usr/local/include/click/ipaddress.hh: At global scope:
>>> /usr/local/include/click/ipaddress.hh:338: error: ‘uint32_t’ does not
>>> name a type
>>> In file included from /usr/local/include/click/packet.hh:6,
>>>                    from /usr/local/include/click/element.hh:7,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.hh:3,
>>>                    from /work/git/click/etc/samplepackage/sampleelt.cc:22:
>>> /usr/local/include/click/timestamp.hh:113: error: ‘int32_t’ does not name a type
>>> /usr/local/include/click/timestamp.hh:118: error: ‘int32_t’ does not name a type
>>> /usr/local/include/click/timestamp.hh:122: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:122: error: expected ‘}’ before
>>> numeric constant
>>> /usr/local/include/click/timestamp.hh:122: error: expected
>>> unqualified-id before numeric constant
>>> /usr/local/include/click/timestamp.hh:160: error: expected
>>> unqualified-id before ‘)’ token
>>> /usr/local/include/click/timestamp.hh:173: error: expected
>>> unqualified-id before ‘long’
>>> /usr/local/include/click/timestamp.hh:173: error: expected ‘)’ before ‘long’
>>> /usr/local/include/click/timestamp.hh:177: error: expected
>>> unqualified-id before ‘int’
>>> /usr/local/include/click/timestamp.hh:177: error: expected ‘)’ before ‘int’
>>> /usr/local/include/click/timestamp.hh:181: error: expected
>>> unqualified-id before ‘unsigned’
>>> /usr/local/include/click/timestamp.hh:181: error: expected ‘)’ before ‘unsigned’
>>> /usr/local/include/click/timestamp.hh:185: error: expected
>>> unqualified-id before ‘unsigned’
>>> /usr/local/include/click/timestamp.hh:185: error: expected ‘)’ before ‘unsigned’
>>> /usr/local/include/click/timestamp.hh:192: error: expected
>>> unqualified-id before ‘const’
>>> /usr/local/include/click/timestamp.hh:192: error: expected ‘)’ before ‘const’
>>> /usr/local/include/click/timestamp.hh:194: error: expected
>>> unqualified-id before ‘const’
>>> /usr/local/include/click/timestamp.hh:194: error: expected ‘)’ before ‘const’
>>> /usr/local/include/click/timestamp.hh:198: error: expected
>>> unqualified-id before ‘const’
>>> /usr/local/include/click/timestamp.hh:198: error: expected ‘)’ before ‘const’
>>> /usr/local/include/click/timestamp.hh:203: error: expected
>>> unqualified-id before ‘const’
>>> /usr/local/include/click/timestamp.hh:203: error: expected ‘)’ before ‘const’
>>> /usr/local/include/click/timestamp.hh:207: error: typedef
>>> ‘seconds_type’ is initialized (use decltype instead)
>>> /usr/local/include/click/timestamp.hh:207: error: expected
>>> unqualified-id before ‘*’ token
>>> /usr/local/include/click/timestamp.hh:207: error:
>>> ‘unspecified_bool_type’ was not declared in this scope
>>> /usr/local/include/click/timestamp.hh:208: error: expected
>>> type-specifier before ‘unspecified_bool_type’
>>> /usr/local/include/click/timestamp.hh:211: error: non-member function
>>> ‘bool is_negative()’ cannot have cv-qualifier
>>> /usr/local/include/click/timestamp.hh: In function ‘bool is_negative()’:
>>> /usr/local/include/click/timestamp.hh:212: error: ‘sec’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh: At global scope:
>>> /usr/local/include/click/timestamp.hh:215: error: ‘seconds_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:216: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:217: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:218: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:219: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:221: error: variable or field
>>> ‘set_sec’ declared void
>>> /usr/local/include/click/timestamp.hh:221: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:222: error: variable or field
>>> ‘set_subsec’ declared void
>>> /usr/local/include/click/timestamp.hh:222: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:224: error: ‘seconds_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:225: error: ‘seconds_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:226: error: ‘seconds_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:231: error: non-member function
>>> ‘timeval timeval()’ cannot have cv-qualifier
>>> /usr/local/include/click/timestamp.hh:237: error: non-member function
>>> ‘timespec timespec()’ cannot have cv-qualifier
>>> /usr/local/include/click/timestamp.hh:245: error: ‘value_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:253: error: ‘value_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:261: error: ‘value_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:275: error: non-member function
>>> ‘click_jiffies_t jiffies()’ cannot have cv-qualifier
>>> /usr/local/include/click/timestamp.hh:279: error: ‘make_sec’ declared
>>> as an ‘inline’ variable
>>> /usr/local/include/click/timestamp.hh:279: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:279: error: expected ‘,’ or ‘;’
>>> before ‘{’ token
>>> /usr/local/include/click/timestamp.hh:285: error: ‘make_msec’ declared
>>> as an ‘inline’ variable
>>> /usr/local/include/click/timestamp.hh:285: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:285: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:285: error: expected ‘,’ or ‘;’
>>> before ‘{’ token
>>> /usr/local/include/click/timestamp.hh:289: error: ‘make_msec’ declared
>>> as an ‘inline’ variable
>>> /usr/local/include/click/timestamp.hh:289: error: redefinition of
>>> ‘Timestamp make_msec’
>>> /usr/local/include/click/timestamp.hh:285: error: ‘Timestamp
>>> make_msec’ previously declared here
>>> /usr/local/include/click/timestamp.hh:289: error: ‘value_type’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:302: error: ‘make_usec’ declared
>>> as an ‘inline’ variable
>>> /usr/local/include/click/timestamp.hh:302: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:302: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:302: error: expected ‘,’ or ‘;’
>>> before ‘{’ token
>>> /usr/local/include/click/timestamp.hh:306: error: ‘make_usec’ declared
>>> as an ‘inline’ variable
>>> /usr/local/include/click/timestamp.hh:306: error: redefinition of
>>> ‘Timestamp make_usec’
>>> /usr/local/include/click/timestamp.hh:302: error: ‘Timestamp
>>> make_usec’ previously declared here
>>> /usr/local/include/click/timestamp.hh:306: error: ‘value_type’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:319: error: ‘make_nsec’ declared
>>> as an ‘inline’ variable
>>> /usr/local/include/click/timestamp.hh:319: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:319: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:319: error: expected ‘,’ or ‘;’
>>> before ‘{’ token
>>> /usr/local/include/click/timestamp.hh:323: error: ‘make_nsec’ declared
>>> as an ‘inline’ variable
>>> /usr/local/include/click/timestamp.hh:323: error: redefinition of
>>> ‘Timestamp make_nsec’
>>> /usr/local/include/click/timestamp.hh:319: error: ‘Timestamp
>>> make_nsec’ previously declared here
>>> /usr/local/include/click/timestamp.hh:323: error: ‘value_type’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh: In function ‘Timestamp epsilon()’:
>>> /usr/local/include/click/timestamp.hh:341: error: no matching function
>>> for call to ‘Timestamp::Timestamp(int, int)’
>>> /usr/local/include/click/timestamp.hh:110: note: candidates are:
>>> Timestamp::Timestamp()
>>> /usr/local/include/click/timestamp.hh:110: note:
>>> Timestamp::Timestamp(const Timestamp&)
>>> /usr/local/include/click/timestamp.hh: In function ‘void clear()’:
>>> /usr/local/include/click/timestamp.hh:346: error: ‘assign’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh: At global scope:
>>> /usr/local/include/click/timestamp.hh:352: error: variable or field
>>> ‘assign’ declared void
>>> /usr/local/include/click/timestamp.hh:352: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:352: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:361: error: variable or field
>>> ‘assign_usec’ declared void
>>> /usr/local/include/click/timestamp.hh:361: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:361: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:365: error: variable or field
>>> ‘assign_nsec’ declared void
>>> /usr/local/include/click/timestamp.hh:365: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:365: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:371: error: variable or field
>>> ‘set’ declared void
>>> /usr/local/include/click/timestamp.hh:371: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:371: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:374: error: variable or field
>>> ‘set_usec’ declared void
>>> /usr/local/include/click/timestamp.hh:374: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:374: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:377: error: variable or field
>>> ‘set_nsec’ declared void
>>> /usr/local/include/click/timestamp.hh:377: error: ‘seconds_type’ was
>>> not declared in this scope
>>> /usr/local/include/click/timestamp.hh:377: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:392: error: non-member function
>>> ‘String unparse()’ cannot have cv-qualifier
>>> /usr/local/include/click/timestamp.hh:393: error: non-member function
>>> ‘String unparse_interval()’ cannot have cv-qualifier
>>> /usr/local/include/click/timestamp.hh:401: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:405: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:409: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:413: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:417: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:421: error: ‘uint32_t’ does not
>>> name a type
>>> /usr/local/include/click/timestamp.hh:432: error: ‘int64_t’ does not name a type
>>> /usr/local/include/click/timestamp.hh:441: error: ‘int32_t’ does not name a type
>>> /usr/local/include/click/timestamp.hh:442: error: ‘int32_t’ does not name a type
>>> /usr/local/include/click/timestamp.hh:447: error: ‘ktime_t’ does not name a type
>>> /usr/local/include/click/timestamp.hh:562: error: expected
>>> unqualified-id before ‘private’
>>> /usr/local/include/click/timestamp.hh: In function ‘void add_fix()’:
>>> /usr/local/include/click/timestamp.hh:570: error: ‘_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:571: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh: In function ‘void sub_fix()’:
>>> /usr/local/include/click/timestamp.hh:582: error: ‘_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh: At global scope:
>>> /usr/local/include/click/timestamp.hh:590: error: ‘value_type’ does
>>> not name a type
>>> /usr/local/include/click/timestamp.hh:606: error: variable or field
>>> ‘value_div_mod’ declared void
>>> /usr/local/include/click/timestamp.hh:606: error: ‘int32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:606: error: ‘div’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:606: error: ‘int32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:606: error: ‘rem’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:607: error: ‘value_type’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:607: error: ‘uint32_t’ was not
>>> declared in this scope
>>> /usr/local/include/click/timestamp.hh:654: error: ‘friend’ used outside of class
>>> /usr/local/include/click/timestamp.hh:655: error: ‘friend’ used outside of class
>>> /usr/local/include/click/timestamp.hh:656: error: ‘friend’ used outside of class
>>> /usr/local/include/click/timestamp.hh:657: error: ‘friend’ used outside of class
>>> /usr/local/include/click/timestamp.hh:658: error: ‘friend’ used outside of class
>>> /usr/local/include/click/timestamp.hh:660: error: expected declaration
>>> before ‘}’ token
>>> make[3]: *** [/work/git/click/etc/samplepackage/sampleelt.ko] Error 1
>>> make[2]: *** [_module_/work/git/click/etc/samplepackage] Error 2
>>> make[1]: *** [sample.ko] Error 2
>>> make[1]: Leaving directory `/work/git/click/etc/samplepackage'
>>> make: *** [sample.ko] Error 2
>>>
>>>
>>
>> _______________________________________________
>> click mailing list
>> click at amsterdam.lcs.mit.edu
>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>
>
>
>



More information about the click mailing list