[Click] click for FreeBSD compile error
Pekka Nikander
pekka.nikander at nomadiclab.com
Thu Nov 18 14:30:58 EST 2010
You can check out a working version from https://github.com/pnr/click
You need to pull the freebsd-kernelmodule-patches branch:
git clone git://github.com/pnr/click.git
git checkout freebsd-kernelmodule-patches
Please let us know how it goes. It should work with both 7.X and 8.X, but so far we've done only minimal testing. So, please report any bugs you encounter.
We haven't yet asked it to be merged since we are still looking at better ways to deal with scheduling. Right now we are using netisr on 7.X and the alternative method on 8.X, as we haven't got netisr to work on 8.X. Hopefully we will get both working on both, at some point.
---Pekka
On 2010-11 -18, at 16:52 , Cong Guo wrote:
> Hello everyone,
>
> I want to use click as FreeBSD kernel module. I configure using
> --enable-bsdmodule, but when I make click I get this error:
>
> **********************************************************************************************************
>
> echo "userlevel analysis app aqm ethernet icmp ip simple standard tcpudp
> test threads" | ../click-buildtool findelem -r userlevel -p .. -X
> ./elements.exclude > elements.conf
> ../click-buildtool elem2make -x "addressinfo.o alignmentinfo.o
> errorelement.o portinfo.o scheduleinfo.o" < elements.conf > elements.mk
> AR libclick.a
> RANLIB libclick.a
> ../click-buildtool elem2export < elements.conf > elements.cc
> CXX elements.cc
> LINK click
> echo "bsdmodule analysis app aqm ethernet icmp ip simple standard tcpudp
> test threads" | ../click-buildtool findelem -r bsdmodule -p .. -X
> ./elements.exclude > elements.conf
> ../click-buildtool elem2make < elements.conf > elements.mk
> g++ -w -W -Wall -fno-exceptions -fno-rtti -fpermissive -fpermissive
> -DHAVE_CONFIG_H -D_KERNEL -nostdinc -I../include -I../include -I. -I.. -I.
> -I/usr/include -I/usr/include -I/usr/include -DCLICK_BSDMODULE
> -DBSD_NETISRSCHED -O2 -g -fPIC -fno-builtin -c ../lib/straccum.cc
> In file included from ../lib/straccum.cc:26:
> ../include/click/timestamp.hh:266: error: 'static Click::Timestamp
> Click::Timestamp::make_jiffies(click_jiffies_difference_t)' cannot be
> overloaded
> ../include/click/timestamp.hh:264: error: with 'static Click::Timestamp
> Click::Timestamp::make_jiffies(click_jiffies_t)'
> ../include/click/timestamp.hh:927: error: redefinition of 'static
> Click::Timestamp Click::Timestamp::make_jiffies(click_jiffies_difference_t)'
> ../include/click/timestamp.hh:913: error: 'static Click::Timestamp
> Click::Timestamp::make_jiffies(click_jiffies_t)' previously defined here
> gmake: *** [straccum.o] Error 1
> *** Error code 2
>
> Stop in /usr/src/click-1.8.0.
>
> ***********************************************************************************************************************
>
> FreeBSD version: 7.1 ( I tried 7.3 but also failed )
> click version: 1.8.0
> gmake version: 3.81
>
> Can anyone help? Do I need to patch FreeBSD kernel?
>
> Thanks,
> Cong
>
> --
> Cong Guo
>
> David R. Cheriton School of Computer Science,
> University of Waterloo, Waterloo, ON
> N2L 3G1
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
More information about the click
mailing list