[Click] cross compile the click
Sascha Alexander Jopen
jopen at informatik.uni-bonn.de
Fri Nov 25 04:34:05 EST 2011
Hi,
i'm not sure what the status of patchless click is in click-2.0. Maybe
you have to enable it with --enable-fixincludes while configuring the
sources. However, if you do not explicitly need kernel level support, i
suggest compiling with --disable-linuxmodule and only use the userlevel
driver. Debugging of your click configurations is much easier in
userlevel and segmentation faults won't take down your machine, as click
in kernel space.
Regards,
Sascha
On 11/24/11 17:55, kele kele wrote:
> Hi,
> Thanks for telling me how to cross compile the click last days.
> Now, my target rmilinux kernel is 2.6.21. click version is 2.0.
> You tell me use these flags:
> CPPFLAGS="-I/path/to/include/
>
> CFLAGS="-I/path/to/include/dir -MD" \
> CXXFLAGS="-I/path/to/include/dir -MD" \
> LDFLAGS="-L/path/to/library/dir" \
> ./configure \
> --prefix=/usr \
> --target=mipsisa32-xlr-linux \
> --host=mipsisa32-xlr-linux \
> --build=i686-linux-gnu \
> --enable-tools=host \
> --enable-userlevel \
> --disable-linuxmodule
>
> now , I have use like this:
> CC=mips64-unknown-linux-gnu-gcc
> CPP=mips64-unknown-linux-gnu-cpp
> CXX=mips64-unknown-linux-gnu-g++
> AR=mips64-unknown-linux-gnu-ar
> AS=mips64-unknown-linux-gnu-as
> LD=mips64-unknown-linux-gnu-ld
> OBJCOPY=mips64-unknown-linux-gnu-objcopy
> OBJDUMP=mips64-unknown-linux-gnu-objdump
> RANLIB=mips64-unknown-linux-gnu-ranlib
> READELF=mips64-unknown-linux-gnu-readelf
> SIZE=mips64-unknown-linux-gnu-size
> STRING=mips64-unknown-linux-gnu-string
> STRIP=mips64-unknown-linux-gnu-strip
>
> ./configure \
> --prefix=/opt/click \
> --host=mips64-unknown-linux-gnu \
> --target=mips64-unknown-linux-gnu \
> --build=i386-linux-gnu \
> --with-linux=/opt/rmi/1.6/linux/src \
> --with-linux-map=/opt/rmi/1.6/linux/src/System.map
>
> And there is a config warning:
> #########################################################
> Your Linux kernel header files cause errors when included by a C++ program,
> so I won't try to compile the linuxmodule driver.
>
> There are two common reasons for this error:
> 1. You have not applied the Linux kernel patch that comes with this
> distribution. Apply the right patch and try again. See the INSTALL
> file for more information.
> 2. Your Linux configuration enables some functionality that is not yet
> covered by our patches. Turn off this functionality and try again,
> or fix the error and tell us how you did it. See the config.log file
> for more detailed information on the error.
> ##########################################################
>
> with this warning, make linuxmoudle will failed.
> I found that in clickdir/include/click-linuxmodule, there are only
> directory include0 , include1.
> if configure success, there will be include2 in the directory too.
> So, I have made an experiment. I configure click-2.0 in kernel
> 2.6.18(centos 5) and
> kernel 2.6.27(fedora 10) with "./configure", all these kernels are without
> click patch.
> The result is that it is succeed in kernel 2.6.27 and faild in kernel
> 2.6.18, the faild imformation
> is same like above config warning.
> I doubt the config warning is relate with the kernel version.
> So can you give me some advices.
> Thanks!
> Kelei Jin
> Zhe Jiang Gong Shang
> University
> China
>
More information about the click
mailing list