[Click] Click: DSRroutetable error/Some unresolved symbols

Eddie Kohler kohler at CS.UCLA.EDU
Thu Jun 17 17:28:40 EDT 2004


Follow John's instructions from his previous mail


On Jun 17, 2004, at 4:24 PM, gaurav dawra wrote:

> Hi Eddie & John
>
> So how to make LInkTable aviablable.
>
> Gaurav
>
>
>> From: Eddie Kohler <kohler at CS.UCLA.EDU>
>> To: John Bicket <jbicket at amsterdam.lcs.mit.edu>
>> CC: click at amsterdam.lcs.mit.edu, gaurav dawra  
>> <openapproject at hotmail.com>
>> Subject: Re: [Click] Click: DSRroutetable error/Some unresolved  
>> symbols
>> Date: Thu, 17 Jun 2004 16:22:11 -0700
>>
>> Hey John,
>>
>> I added "ELEMENT_REQUIRES(LinkTable)" to DSRRouteTable to prevent  
>> this  error (at least DSRRouteTable won't be compiled unless  
>> LinkTable is  available).
>>
>> Eddie
>>
>>
>> On Jun 17, 2004, at 2:32 PM, John Bicket wrote:
>>
>>> try configuring like this:
>>>
>>>
>>>   $ /home/jbicket/co/click/configure --enable-wifi --enable-kassert
>>>   --disable-adaptive --enable-linuxmodule --disable-userlevel
>>>   --with-linux=xxxxx
>>>
>>>
>>>   --john
>>>
>>>
>>> gaurav dawra [openapproject at hotmail.com] wrote:
>>>> Hi eddie and to all mailing list members,
>>>>
>>>> I downloaded and compiled the most recent version of click from CVS
>>>> anonymous. Patched the kernel with the most RECENT patches, yeah  
>>>> also
>>>> downloaded *new* 2.4.20 kernel from kernel.org, patched  
>>>> successfully.
>>>>
>>>> Allright when i configure with:
>>>> ./configure --enable-grid  --enable-local  --enable-adaptive
>>>> --with-linux=/usr/src/linux-2.4.20
>>>> --with-pcap=/home/dawra/release/libpcap-0.7.1
>>>>
>>>> It "does" give me these errors, something linked with   
>>>> "dsrroutetable.o" on
>>>> userlevel side.
>>>>
>>>> .o click.o libclick.a `../click-compile --otherlibs`
>>>> dsrroutetable.o(.text+0x1247): In function
>>>> `DSRRouteTable::sendbuffer_timer_hook()':
>>>> ../elements/grid/dsrroutetable.cc:327: undefined reference to
>>>> `LinkTable::dijkstra()'
>>>> dsrroutetab.o -DHAVE_CONFIG_Hclick.o libclick.a `../click-compile
>>>> --otherlibs`
>>>> dsrroutetable.o(.text+0x1247): In function
>>>> `DSRRouteTable::sendbuffer_timer_hook()':
>>>> ../elements/grid/dsrroutetable.cc:327: undefined reference to
>>>> `LinkTable::dijkstra()'
>>>> dsrroutetable.o(.text+0x125c):../elements/grid/dsrroutetable.cc:328:
>>>> undefined reference to `LinkTable::best_route(IPAddress)'
>>>> dsrroutetable.o(.text+0x1b96): In function `DSRRouteTable::push(int,
>>>> Packet*)':
>>>> ../elements/grid/dsrroutetable.cc:471: undefined reference to
>>>> `LinkTable::dijkstra()'
>>>> dsrroutetable.o(.text+0x1bae):../elements/grid/dsrroutetable.cc:472:
>>>> undefined reference to `LinkTable::best_route(IPAddress)'
>>>> dsrroutetable.o(.text+0x1ec1): In function `DSRRouteTable::push(int,
>>>> Packet*)':
>>>> ../elements/wifi/linktable.hh:90: undefined reference to
>>>> `LinkTable::update_link(IPAddress, IPAddress, int)'
>>>> dsrroutetable.o(.text+0x2186): In function `DSRRouteTable::push(int,
>>>> Packet*)':
>>>> ../include/click/vector.hh:220: undefined reference to
>>>> `LinkTable::update_link(IPAddress, IPAddress, int)'
>>>> dsrroutetable.o(.text+0x2518): In function `DSRRouteTable::push(int,
>>>> Packet*)':
>>>> ../elements/wifi/linktable.hh:90: undefined reference to
>>>> `LinkTable::update_link(IPAddress, IPAddress, int)'
>>>> dsrroutetable.o(.text+0x2676): In function `DSRRouteTable::push(int,
>>>> Packet*)':
>>>> ../elements/grid/dsrroutetable.cc:761: undefined reference to
>>>> `LinkTable::update_link(IPAddress, IPAddress, int)'
>>>> dsrroutetable.o(.text+0x49f8): In function
>>>> `DSRRouteTable::rreq_issue_hook()':../elements/grid/ 
>>>> dsrroutetable.cc: 1715:
>>>> undefined reference to `LinkTable::dijkstra()'
>>>> dsrroutetable.o(.text+0x4a0d):../elements/grid/dsrroutetable.cc: 
>>>> 1716:
>>>> undefined reference to `LinkTable::best_route(IPAddress)'
>>>> dsrroutetable.o(.text+0x4e57): In function
>>>> `DSRRouteTable::add_route_to_link_table(Vector<DSRHop>)':
>>>> ../elements/wifi/linktable.hh:90: undefined reference to
>>>> `LinkTable::update_link(IPAddress, IPAddress, int)'
>>>> dsrroutetable.o(.text+0x4e85): In function
>>>> `DSRRouteTable::add_route_to_link_table(Vector<DSRHop>)':
>>>> ../elements/grid/dsrroutetable.cc:1806: undefined reference to
>>>> `LinkTable::update_link(IPAddress, IPAddress, int)'
>>>> dsrroutetable.o(.text+0x4ea1): In function
>>>> `DSRRouteTable::add_route_to_link_table(Vector<DSRHop>)':
>>>> ../elements/wifi/linktable.hh:90: undefined reference to
>>>> `LinkTable::update_link(IPAddress, IPAddress, int)'
>>>> collect2: ld returned 1 exit status
>>>> make[1]: *** [click] Error 1
>>>> make[1]: Leaving directory `/root/click/userlevel'
>>>> make: *** [userlevel] Error 2
>>>>
>>>> ==> USING THE SAME KERNEL AND PATCHES but *NOT* the most recent  
>>>> CLICK
>>>> version( this one i downloaded around one month back using CVS   
>>>> anonymous),
>>>> it *DOES* compile both userlevel and KERNEL modules without any   
>>>> errors. Is
>>>> this is a bug in the most RECENT click version?, so why it compiles  
>>>>  the
>>>> earlier version not this NEW one.
>>>> -------------------------------------------------------------------- 
>>>> -- -----------
>>>> If i compile and configure by DISABLING GRID ,the user level  
>>>> programs
>>>> compiles. Same way if i compile the KERNEL LEVEL modules with   
>>>> disablliing
>>>> USER LEVEL it compiles. But it gives these *unresolved*  
>>>> symbols(listed
>>>> below) when i try to load click.o . I need proclikefs.o and click.o  
>>>>  for my
>>>> work. But proclikefs.o loads NOT click.o becoz of these unresolved   
>>>> symbols.
>>>> Well by looking at it seems like it might require some other  
>>>> module.  But i
>>>> do have any clue which one it might require. It is an ERROR, am i   
>>>> missing
>>>> something in config file or somewhere else.
>>>>
>>>> [root at roofnet linuxmodule]# insmod click.o
>>>> click.o: unresolved symbol _ZN9LinkTable8dijkstraEv
>>>> click.o: unresolved symbol _ZN9LinkTable11update_linkE9IPAddressS0_i
>>>> click.o: unresolved symbol _ZN9LinkTable10best_routeE9IPAddress
>>>> -----------------------------------------------------------------
>>>>
>>>> Also Can you suggest me why is this error coming:
>>>>
>>>> [root at roofnet linuxmodule]# insmod iptable.o
>>>> iptable.o: couldn't find the kernel version the module was compiled  
>>>>  for
>>>>
>>>>
>>>> it comes for all other modules in "../click/linuxmodules" directory  
>>>>  EXPECT
>>>> for proclikefs.o and click.o
>>>> huh!!
>>>>
>>>> I opened the kernelversion.cc , i think it is written by robert   
>>>> morris. It
>>>> suggested that gcc or g++ seems to ignoring kernel version , so may  
>>>> be
>>>> compile using "cc",i did, it didn't worked even. Same error.
>>>>
>>>> i hope you will reply soon,
>>>>
>>>> Gaurav
>>>>
>>>>
>>>>> From: Eddie Kohler <kohler at CS.UCLA.EDU>
>>>>> To: "gaurav dawra" <openapproject at hotmail.com>
>>>>> CC: click at amsterdam.lcs.mit.edu
>>>>> Subject: Re: [Click] CLICK: CONFIG_ATALK IS NOT SET
>>>>> Date: Thu, 17 Jun 2004 11:39:30 -0700
>>>>>
>>>>> Did you use the patch from the current anonymous cvs version, or  
>>>>> an   older
>>>>> patch?
>>>>>
>>>>>
>>>>>
>>>>> On Jun 17, 2004, at 8:51 AM, gaurav dawra wrote:
>>>>>
>>>>>> Eddie
>>>>>>
>>>>>> I downloaded CLICK using these commands. I believe this is the    
>>>>>> anonymous
>>>>>> version, if not which is the one. Shall i download    
>>>>>> click-1.3pre1.tar.gz,
>>>>>> is the BUG fixed in that. The kernel which i am  using has the   
>>>>>> *PACHES*
>>>>>> already appiled to it. I might also tryto use  the plain vanialla  
>>>>>>  kernel.
>>>>>> But i probably need a right CLICK software  to experiment. Please
>>>>>> SUGGEST, another thing. I could able to compile  the USER SIDE   
>>>>>> programs
>>>>>> successfully , only kernel modules do not  compile. I may bother   
>>>>>> you will
>>>>>> few more questions as they come.
>>>>>> ------------------------------------------------------------------ 
>>>>>> -- ---
>>>>>> --------------------------------------------
>>>>>> CVS commands
>>>>>> First, log in to our CVS server with the following command:
>>>>>>
>>>>>> % cvs -d :pserver:anoncvs at cvs.pdos.lcs.mit.edu:/cvs login
>>>>>> CVS password:
>>>>>> (Just hit enter when prompted for a password.)
>>>>>>
>>>>>> Then, to obtain the current source, run this command:
>>>>>>
>>>>>> % cvs -z5 -d :pserver:anoncvs at cvs.pdos.lcs.mit.edu:/cvs co -d  
>>>>>> click
>>>>>> click/release/one
>>>>>> This checks out a copy of the Click sources and places them in the
>>>>>> `click' directory on your machine. The `-z5' option asks for    
>>>>>> compression.
>>>>>>
>>>>>> To update a previously checked out source tree, change into the   
>>>>>> click
>>>>>> directory and run this command:
>>>>>>
>>>>>> % cvs -z5 up -dP
>>>>>> Building Click
>>>>>> Before building Click from checked-out source, you must obtain GNU
>>>>>> autoconf if you don't have it already. Most current operating  
>>>>>> system
>>>>>> distributions include autoconf by default.
>>>>>>
>>>>>> Change into the click directory and run this command:
>>>>>>
>>>>>> % autoconf
>>>>>> You can now follow the directions in README to configure and  
>>>>>> build  the
>>>>>> sources. Generally speaking, you'll run ./configure with a couple
>>>>>> options, then run make.
>>>>>> ------------------------------------------------------------------ 
>>>>>> -- ---
>>>>>> ------------------------------------------------------------
>>>>>>
>>>>>> Thanx,
>>>>>> Gaurav
>>>>>>
>>>>>>
>>>>>>> From: Eddie Kohler <kohler at CS.UCLA.EDU>
>>>>>>> To: "gaurav dawra" <openapproject at hotmail.com>
>>>>>>> CC: click at amsterdam.lcs.mit.edu
>>>>>>> Subject: Re: [Click] CLICK: CONFIG_ATALK IS NOT SET
>>>>>>> Date: Wed, 16 Jun 2004 17:44:38 -0700
>>>>>>>
>>>>>>> Guarav,
>>>>>>>
>>>>>>> I think you are using an older version of click as this bug with  
>>>>>>>  the
>>>>>>> click patch is fixed in the anonymous cvs version
>>>>>>>
>>>>>>> Eddie
>>>>>>>
>>>>>>>
>>>>>>> On Jun 16, 2004, at 5:10 PM, gaurav dawra wrote:
>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> Here are the configuration options while trying to configure   
>>>>>>>> CLICK  FOR
>>>>>>>> kernel modules. I came accross some errors.
>>>>>>>>
>>>>>>>> [root at roofnet click]# ./configure --enable-grid   
>>>>>>>> --disable-userlevel
>>>>>>>> --enable-local --enable-adaptive   
>>>>>>>> --with-linux=/usr/src/linux-2.4.20
>>>>>>>> --with-pcap=/home/dawra/release/libpcap-0.7.1
>>>>>>>> --GIVES NO ERRORS.
>>>>>>>>
>>>>>>>> [root at roofnet click]# gmake
>>>>>>>> gmake[1]: Entering directory `/home/dawra/click/linuxmodule'
>>>>>>>> echo "linuxmodule  standard ethernet aqm ip icmp tcpudp app  
>>>>>>>> local
>>>>>>>> grid" | (cd ..; ./click-buildtool
>>>>>>>> findelem -r "linuxmodule int64 linux_2_4 i686 i386 i586") >
>>>>>>>> elements.conf
>>>>>>>> ../click-buildtool elem2make -x "addressinfo.o alignmentinfo.o
>>>>>>>> drivermanager.o errorelement.o portinfo.o scheduleinfo.o" <
>>>>>>>> elements.conf > elements.mk
>>>>>>>> gmake[1]: Leaving directory `/home/dawra/click/linuxmodule'
>>>>>>>> gmake[1]: Entering directory `/home/dawra/click/linuxmodule'
>>>>>>>> g++ -w -W -Wall -fno-exceptions -fno-rtti  -DHAVE_CONFIG_H
>>>>>>>> -I../include -I../include -I. -I..  
>>>>>>>> -I/usr/src/linux-2.4.20/include
>>>>>>>> -DCLICK_LINUXMODULE -O2 -MD -c ../lib/string.cc
>>>>>>>> g++ -w -W -Wall -fno-exceptions -fno-rtti  -DHAVE_CONFIG_H
>>>>>>>> -I../include -I../include -I. -I..  
>>>>>>>> -I/usr/src/linux-2.4.20/include
>>>>>>>> -DCLICK_LINUXMODULE -O2 -MD -c ../lib/straccum.cc
>>>>>>>> g++ -w -W -Wall -fno-exceptions -fno-rtti  -DHAVE_CONFIG_H
>>>>>>>> -I../include -I../include -I. -I..  
>>>>>>>> -I/usr/src/linux-2.4.20/include
>>>>>>>> -DCLICK_LINUXMODULE -O2 -MD -c ../lib/bitvector.cc
>>>>>>>> g++ -w -W -Wall -fno-exceptions -fno-rtti  -DHAVE_CONFIG_H
>>>>>>>> -I../include -I../include -I. -I..  
>>>>>>>> -I/usr/src/linux-2.4.20/include
>>>>>>>> -DCLICK_LINUXMODULE -O2 -MD -c ../lib/vectorv.cc
>>>>>>>> g++ -w -W -Wall -fno-exceptions -fno-rtti  -DHAVE_CONFIG_H
>>>>>>>> -I../include -I../include -I. -I..  
>>>>>>>> -I/usr/src/linux-2.4.20/include
>>>>>>>> -DCLICK_LINUXMODULE -O2 -MD -c ../lib/templatei.cc
>>>>>>>> In file included from  
>>>>>>>> /usr/src/linux-2.4.20/include/net/sock.h:64,
>>>>>>>>                from /usr/src/linux-2.4.20/include/net/ip.h:39,
>>>>>>>>                from   
>>>>>>>> /usr/src/linux-2.4.20/include/net/checksum.h:31,
>>>>>>>>                from ../include/clicknet/ip.h:8,
>>>>>>>>                from ../include/click/ipaddress.hh:6,
>>>>>>>>                from ../include/click/packet.hh:4,
>>>>>>>>                from ../include/click/element.hh:7,
>>>>>>>>                from ../include/click/router.hh:4,
>>>>>>>>                from ../lib/templatei.cc:21:
>>>>>>>> /usr/src/linux-2.4.20/include/net/ax25.h:179: declaration of `
>>>>>>>>  ax25_dev*ax25_cb::ax25_dev'
>>>>>>>> /usr/src/linux-2.4.20/include/net/ax25.h:173: changes meaning of
>>>>>>>> `ax25_dev'
>>>>>>>>  from `typedef struct ax25_dev ax25_dev'
>>>>>>>> gmake[1]: *** [templatei.o] Error 1
>>>>>>>> gmake[1]: Leaving directory `/home/dawra/click/linuxmodule'
>>>>>>>> gmake: *** [linuxmodule] Error 2
>>>>>>>> [root at roofnet click]#
>>>>>>>>
>>>>>>>> MY CONFIG FILE in /usr/src/linux-2.4.20 looklikes this
>>>>>>>> #
>>>>>>>> # CONFIG_IPX is not set
>>>>>>>> # CONFIG_ATALK is not set
>>>>>>>>
>>>>>>>> #
>>>>>>>> # Appletalk devices
>>>>>>>> #
>>>>>>>> # CONFIG_DEV_APPLETALK is not set
>>>>>>>> # CONFIG_DECNET is not set
>>>>>>>> # CONFIG_BRIDGE is not set
>>>>>>>> # CONFIG_X25 is not set
>>>>>>>> # CONFIG_LAPB is not set
>>>>>>>> # CONFIG_LLC is not set
>>>>>>>> # CONFIG_NET_DIVERT is not set
>>>>>>>> # CONFIG_ECONET is not set
>>>>>>>> # CONFIG_WAN_ROUTER is not set
>>>>>>>> # CONFIG_NET_FASTROUTE is not set
>>>>>>>> # CONFIG_NET_HW_FLOWCONTROL is not set
>>>>>>>>
>>>>>>>> THE APPLETALK DEVICES....CONFIG_ATALK is not set, as was   
>>>>>>>> mentioned  in
>>>>>>>> the INSTALL file of the click.
>>>>>>>>
>>>>>>>> I have also found while going through the postings about the  
>>>>>>>> same   kind
>>>>>>>> of error by "Bow-Nan Cheng" but there was not any solution for   
>>>>>>>>  it. If
>>>>>>>> you have figured it out Bow-Nan Cheng, please suggest me 2. I    
>>>>>>>> believe
>>>>>>>> that the configuration file which i using to compile my  kernel  
>>>>>>>>  is too
>>>>>>>> vast  for CLICK, is that a problem. I have spend the  whole   
>>>>>>>> afternoon
>>>>>>>> trying to figure out the error, recompiled the  kernel also ,   
>>>>>>>> followed
>>>>>>>> all steps.
>>>>>>>>
>>>>>>>> Thanx and i hope you guys will reply soon.
>>>>>>>>
>>>>>>>> Gaurav
>>>>>>>>
>>>>>>>> ________________________________________________________________ 
>>>>>>>> _
>>>>>>>> Looking to buy a house? Get informed with the Home Buying Guide  
>>>>>>>>  from
>>>>>>>> MSN House & Home. http://coldwellbanker.msn.com/
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> click mailing list
>>>>>>>> click at amsterdam.lcs.mit.edu
>>>>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>>>>>>
>>>>>>
>>>>>> _________________________________________________________________
>>>>>> FREE pop-up blocking with the new MSN Toolbar ? get it now!
>>>>>> http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/
>>>>>
>>>>
>>>> _________________________________________________________________
>>>> Watch the online reality show Mixed Messages with a friend and  
>>>> enter  to win
>>>> a trip to NY
>>>> http://www.msnmessenger-download.click-url.com/go/onm00200497ave/  
>>>> direct/01/
>>>>
>>>> _______________________________________________
>>>> click mailing list
>>>> click at amsterdam.lcs.mit.edu
>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>
>
> _________________________________________________________________
> FREE pop-up blocking with the new MSN Toolbar – get it now!  
> http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/
>
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click



More information about the click mailing list