[Click] Compile issues on RHEL 6.4 (2.6.32)

Keith Schoenefeld keith at schoenefeld.org
Sat Feb 23 14:14:42 EST 2013


I should have said "I grabbed the latest tarball from github".  More
specifically, I downloaded the tarball provided at the URI
"https://github.com/kohler/click/tarball/master".  Since the directory
name created when I extracted the tarball (kohler-click-6aa1787)
matches the latest commit, I assumed this matched what I could obtain
using git clone.  Should I install git and run a git clone just to be
sure?

-- KS

On Sat, Feb 23, 2013 at 12:25 PM, Eddie Kohler <ekohler at gmail.com> wrote:
> Just to double check for a misunderstanding: You don't grab a tarball
> from git. Are you using the click-2.0.1 release, or the current git
> sources, which you can obtain by `git clone` from github.com?
>
>
> On Sat, Feb 23, 2013 at 1:11 PM, Keith Schoenefeld
> <keith at schoenefeld.org> wrote:
>> - My understanding is that CentOS is built using the source RPMS for
>> RHEL, so CentOS 6.x would be as close to identical as possible with
>> RHEL 6.x.
>> - I used the stock compiler that comes with RHEL 6.4
>> - I grabbed the latest tarball from git and used that, yes.
>>
>> I will point out that in the last 30 minutes I realized that when I
>> tried to insmod click.ko (with stock click 2.0.1, which I did finally
>> get to compile) without first running insmod proclikefs.ks -- once I
>> did things in the right order it seems to be working (I'm finalizing a
>> config right now to test).  That said, the compile issues for the
>> current git versions still exist, and I'd much rather be running up to
>> date code than stock 2.0.1.  Thanks for the quick response.
>>
>> -- KS
>>
>> On Sat, Feb 23, 2013 at 11:34 AM, Eddie Kohler <ekohler at gmail.com> wrote:
>>> Hi Keith, sorry for the errors.
>>>
>>> Some questions, since I don't have RHEL to test.
>>> —Is there a Fedora/Centos version that corresponds?
>>> —Specific compiler version?
>>> —Most importantly, have you tried with current git?
>>>
>>> Eddie
>>>
>>>
>>> On Fri, Feb 22, 2013 at 11:41 PM, Keith Schoenefeld
>>> <keith at schoenefeld.org> wrote:
>>>> I'm running RHEL 6.4 with a RedHat kernel.  I've worked through
>>>> various compile issues working on the 2.0.1 release code, including
>>>> having to recompile the kernel from source with NR_CPUS set to 8
>>>> instead of 4096, adding the NETREG line to fixincludes.pl, etc.  I
>>>> have 2.0.1 compiling now with no issues, but once I install and run
>>>> insmod click.ko I get the error "insmod: error inserting 'click.ko':
>>>> -1 Cannot allocate memory".  I tried running strip -g as suggested in
>>>> another post, but then I get "insmod: error inserting 'click.ko': -1
>>>> Unknown symbol in module".  I've also tried using the latest git
>>>> repository.  Using the following configure command:
>>>>
>>>> ./configure --prefix=/opt/click-kohler-6aa1787 --disable-userlevel
>>>> --enable-multithread
>>>>
>>>> I end up with the following errors (I ran make once to compile
>>>> everything that would compile, then again to just get the list of
>>>> errors):
>>>>
>>>>
>>>> # make linuxmodule
>>>> make[1]: Entering directory `/root/kohler-click-6aa1787/linuxmodule'
>>>> make -C /lib/modules/2.6.32-358.el6.click.x86_64/build
>>>> M=/root/kohler-click-6aa1787/linuxmodule  modules
>>>> make[2]: Entering directory `/usr/src/kernels/2.6.32-358.el6.click.x86_64'
>>>>   CXX [M] tohost.o
>>>> In file included from
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/linux/tcp.h:186,
>>>>                  from
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/linux/ipv6.h:220,
>>>>                  from
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/ip.h:344,
>>>>                  from
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/xfrm.h:23,
>>>>                  from
>>>> /root/kohler-click-6aa1787/linuxmodule/../elements/linuxmodule/tohost.cc:28:
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:
>>>> In function ‘void inet_csk_clear_xmit_timer(sock*, int)’:
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:208:
>>>> error: ‘DEBUG_HASH’ was not declared in this scope
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:208:
>>>> error: ‘DEBUG_HASH2’ was not declared in this scope
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:208:
>>>> error: too many initializers for ‘_ddebug’
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:
>>>> In function ‘void inet_csk_reset_xmit_timer(sock*, int, long unsigned
>>>> int, long unsigned int)’:
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:224:
>>>> error: ‘DEBUG_HASH’ was not declared in this scope
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:224:
>>>> error: ‘DEBUG_HASH2’ was not declared in this scope
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:224:
>>>> error: too many initializers for ‘_ddebug’
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:241:
>>>> error: ‘DEBUG_HASH’ was not declared in this scope
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:241:
>>>> error: ‘DEBUG_HASH2’ was not declared in this scope
>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:241:
>>>> error: too many initializers for ‘_ddebug’
>>>>   CREATE /root/kohler-click-6aa1787/linuxmodule/ksyms.c
>>>> nm: 'tohost.o': No such file
>>>>   CC [M] ksyms.o
>>>>   LD [M]  /root/kohler-click-6aa1787/linuxmodule/click.o
>>>> ld: /root/kohler-click-6aa1787/linuxmodule/tohost.o: No such file: No
>>>> such file or directory
>>>> make[3]: *** [/root/kohler-click-6aa1787/linuxmodule/click.o] Error 1
>>>> make[2]: *** [_module_/root/kohler-click-6aa1787/linuxmodule] Error 2
>>>> make[2]: Leaving directory `/usr/src/kernels/2.6.32-358.el6.click.x86_64'
>>>> make[1]: *** [all] Error 2
>>>> make[1]: Leaving directory `/root/kohler-click-6aa1787/linuxmodule'
>>>> make: *** [linuxmodule] Error 2
>>>>
>>>> I'm not sure where to go with the DEBUG_HASH, DEBUG_HASH2, etc. errors
>>>> and google hasn't helped me at all.  Does anyone have any
>>>> recommendations for getting this working?
>>>>
>>>> -- KS
>>>>
>>>> _______________________________________________
>>>> click mailing list
>>>> click at amsterdam.lcs.mit.edu
>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click



More information about the click mailing list