Salim, All, On Saturday 28 August 2010 12:47:45 Salim Tyrewala wrote: > I'm new to busybox. I'm having trouble cross-compiling busybox to ARM > using arm-elf-gcc. It doesn't find some include files byteswap.h for > instance.
arm-elf-gcc is a bare-emtal toolchain. You won't be able to build busybox with such a toolchain. A bare-metal system is a system that runs without any kernel. You need a toolchain that targets a Linux-based system. Such toolchain will have a tuple in the form: arm-unknown-linux-gnu, arm-linux-gnu, or even arm-linux. Which would give a cross compiler named like: arm-unknown-linux-gnu-gcc, arm-linux-gnu-gcc or arm-linux-gcc. The 'gnu' in the tuple means that it is based on the GNU C library glibc. It can happen also that the tuple be something like: arm-unknown-linux-uclibc to denote that it is based on the uClibc C library instead of glibc. > I'm not sure what is happening differently when I cross-compile. Why > isn't the include path include /usr/include where it should find all > the headers? Because those headers are not looked for by a cross-toolchain. A cross- toolchain has its own set of headers. Those headers come from the kernel and C library used to build the cross-toolchain, and can widely differ from those used to build your native toolchain (eg. glibc vs. uClibc, or a different kernel headers version...) > I think I'm doing something stupid. Please help! You can use a proper cross-toolchain targetting Linux. There are pre-built such toolchains available, see for example Tito's suggestion to use Code Sourcery's. You can even build your own, either manually (which is very, very, very complex, and which I do not recommend for a beginner). or using crosstool-NG or buildroot to build your toolchain. Crosstool-NG will only build the toolchain, while buildroot can also build a complete system for you, from the toolchain to the kernel, to busybox to X. For a newcomer to cross-compilation, I'd recommend either a pre-built toolchain (eg. Code Sourcery's) or buildroot. Regards, Yann E. MORIN. -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' _______________________________________________ busybox mailing list [email protected] http://lists.busybox.net/mailman/listinfo/busybox
