Instructions from a previous mail about compiling for non-x86: > Here's how I recently cross built on x86 Ubuntu 10.04LTS for an ARM system with kernel sources and toolchain
> provided my the chip vendor: > >On host: > >TARG_KERNEL is path to kernel sources for target system >TARG_FS is path to filesystem of target system > >In Etherlab source dir: > > ./configure --prefix=$TARG_FS/opt --with-linux-dir=$TARG_KERNEL \ > --enable-generic --host=arm-none-linux-gnueabi- > I use buildroot to generate the Linux kernel for the target board. So then I put etherlabmaster-4adb56c4198d in a folder on the Linux PC. I went into the folder etherlabmaster-4adb56c4198d and did this: user1@dhcppc15:~/Desktop/EtherCAT4Atmel/etherlabmaster-4adb56c4198d> ./bootstrap + touch ChangeLog + autoreconf -i libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `autoconf'. libtoolize: copying file `autoconf/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'. libtoolize: copying file `m4/libtool.m4' libtoolize: copying file `m4/ltoptions.m4' libtoolize: copying file `m4/ltsugar.m4' libtoolize: copying file `m4/ltversion.m4' libtoolize: copying file `m4/lt~obsolete.m4' configure.ac:45: installing `autoconf/compile' configure.ac:44: installing `autoconf/config.guess' configure.ac:44: installing `autoconf/config.sub' configure.ac:33: installing `autoconf/install-sh' configure.ac:33: installing `autoconf/missing' examples/dc_user/Makefile.am: installing `autoconf/depcomp' So everything seems ok so far and I saw the configure file get generate. So filling in the TARG_FS and TARG_KERNEL values from above suggestion, I then did this: ./configure --prefix=/home/user1/buildroot-2011.05/output/target/opt \ --with-linux-dir=/home/user1/buildroot-2011.05/output/build/linux-2.6.33 \ --enable-generic --host=/home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-u clibcgnueabi-gcc And this is the output: configure: WARNING: if you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-strip... no checking for strip... strip checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-g++... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-c++... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-gpp... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-aCC... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-CC... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-cxx... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-cc++... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-cl.exe... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-FCC... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-KCC... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-RCC... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-xlC_r... no checking for /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc-xlC... no checking for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of g++... gcc3 checking build system type... i686-suse-linux-gnu checking host system type... Invalid configuration `/home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcg nueabi-gcc': machine `/home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcg nueabi' not recognized configure: error: /bin/sh autoconf/config.sub /home/user1/buildroot-2011.05/output/host/usr/bin/arm-unknown-linux-uclibcgn ueabi-gcc failed Can someone offer a suggestion about how to improve this so that I can build EtherCAT into the Linux kernel/fs that I build for the target board? Thanks, Jeff
_______________________________________________ etherlab-users mailing list etherlab-users@etherlab.org http://lists.etherlab.org/mailman/listinfo/etherlab-users