[Click] Compiling click elements in kernel mode with common library...
raul.cafini at studio.unibo.it
raul.cafini at studio.unibo.it
Thu Apr 22 10:50:35 EDT 2010
Hello,
I have a problem compiling my own click element when i try to include headers
files like math.h or signal.h.
If I compile it with: make install, the linker return:
-----------------------------------------------------------------------------------------------------------------------------------
[root at deisnet69 click-git]# make install
make[1]: Entering directory `/home/user69/click-git/userlevel'
CXX ../elements/local/CEScheduler.cc
../elements/local/CEScheduler.cc:928: warning: unused parameter arg
LINK click
../mkinstalldirs /usr/local/lib
for i in libclick.a; do /usr/bin/install -c $i /usr/local/lib/$i; done
../mkinstalldirs /usr/local/bin
for i in click; do /usr/bin/install -c $i /usr/local/bin/$i; done
make[1]: Leaving directory `/home/user69/click-git/userlevel'
make[1]: Entering directory `/home/user69/click-git/linuxmodule'
make -C /lib/modules/2.6.31.12-174.2.19.fc12.i686.PAE/build
M=/home/user69/click-git/linuxmodule modules
make[2]: Entering directory `/usr/src/kernels/2.6.31.12-174.2.19.fc12.i686.PAE'
CXX [M] CEScheduler.o
In file included from /usr/include/signal.h:77,
from
/home/user69/click-git/linuxmodule/../elements/local/CEScheduler.cc:36:
/usr/include/time.h:120: error: redefinition of struct timespec
/home/user69/click-git/include/click-linuxmodule/include0/linux/time.h:16:
error: previous definition of struct timespec
make[3]: *** [/home/user69/click-git/linuxmodule/CEScheduler.o] Error 1
make[2]: *** [_module_/home/user69/click-git/linuxmodule] Error 2
make[2]: Leaving directory `/usr/src/kernels/2.6.31.12-174.2.19.fc12.i686.PAE'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/user69/click-git/linuxmodule'
make: *** [install] Error 1
----------------------------------------------------------------------------------------------------------------------------------------------------
In this case in the element CEScheduler I need the signal.h header file but i
can't writte #include <signal.h> without receive the error message above.
I know this problem is linked to kernel level compiling option but my question
is: how can i include libraries like signal.h or math.h in my elements and
compiling them in linux module version?
Thanks,
Raul.
More information about the click
mailing list