HOW TO INSTALL -------------- Because it is the same toolchain that OE we need to install it under /usr/local/jlime. cd /tmp wget http://jlime.com/downloads/development/crosscompilers/jlime-mipsel-toolchain.tar.gz mkdir /usr/local/jlime cd /usr/local/jlime tar xvzf /tmp/jlime-mipsel-toolchain.tar.gz Adding libraries ---------------- If you need to add more libraries to your toolchain just download the proper ipk file from our repo (also download the *-dev-*.ipk file ) and uncompress them under /usr/local/jlime/mipsel-toolchain. Then run the modify-pc.sh pkgconfig script. For example if we need to add aalibs to our toolchain : cd /tmp wget http://jlime.com/downloads/repository/muffinman/ipk/mipsel/aalib-dev_1.4rc5-r1_mipsel.ipk wget http://jlime.com/downloads/repository/muffinman/ipk/mipsel/aalib_1.4rc5-r1_mipsel.ipk dpkg -x aalib-dev_1.4rc5-r1_mipsel.ipk /usr/local/jlime/mipsel-toolchain dpkg -x aalib_1.4rc5-r1_mipsel.ipk /usr/local/jlime/mipsel-toolchain cd /usr/local/jlime/mipsel-toolchain/usr/lib/pkgconfig/ ./modify-pc.sh Building the kernel ------------------- export PATH=$PATH:/usr/local/jlime/mipsel-toolchain/usr/bin and make with : make ARCH=mips CROSS_COMPILE=mipsel-linux- clean make ARCH=mips CROSS_COMPILE=mipsel-linux- vmlinux.bin Check the doc in http://jlime.com/downloads/releases/muffinman/documentation/kernel-nn.txt Crosscompiling ============== Example ------- First, ./configure and make on your host the application to port, so you can test the building process. Then make clean and use the toolchain. Example about how to port the vifm application: cd /tmp wget http://ftp.de.debian.org/debian/pool/main/v/vifm/vifm_0.4.orig.tar.gz tar xvzf vifm_0.4.orig.tar.gz cd vifm_0.4.orig ./configure make After, when building on our host is okey: make clean . /usr/local/jlime/mipsel-toolchain/usr/bin/setup-env set_makefile.sh make It builds fine, but in the my PC the last ld command failed with : /bin/sh ../libtool --mode=link gcc -g -O2 -Wall -o vifm vifm.o background.o bookmarks.o color_scheme.o commands.o config.o file_info.o filelist.o fileops.o filetype.o keys.o menus.o registers.o rline.o search.o signals.o sort.o ui.o utils.o visual.o -lncursesw gcc -g -O2 -Wall -o vifm vifm.o background.o bookmarks.o color_scheme.o commands.o config.o file_info.o filelist.o fileops.o filetype.o keys.o menus.o registers.o rline.o search.o signals.o sort.o ui.o utils.o visual.o -lncursesw /usr/local/jlime/mipsel-toolchain/usr/bin/../lib/gcc/mipsel-linux/4.4.2/../../../../mipsel-linux/bin/ld: cannot find -lncursesw collect2: ld returned 1 exit status ake[2]: *** [vifm] Error 1 make[2]: leaving `/tmp/rafa/vifm_0.4.orig/src' make[1]: *** [all-recursive] Error 1 In this case the error was that libncursesw does not exist in our toolchain (its name in our toolchain is just ncurses), and also, it did not search the lib in our toolchain. So, I ran manually the final step to build this example : cd src gcc -g -O2 -Wall -o vifm vifm.o background.o bookmarks.o color_scheme.o commands.o config.o file_info.o filelist.o fileops.o filetype.o keys.o menus.o registers.o rline.o search.o signals.o sort.o ui.o utils.o visual.o -L/usr/local/jlime/mipsel-toolchain/usr/lib -lncurses (I added -L/usr/local/jlime/mipsel-toolchain/usr/lib and also modified -lncursesw with -lncurses). NOTES: - check that I ran . /usr/local/jlime/mipsel-toolchain/usr/bin/setup-env set_makefile.sh make setup-env set the environment to crosscompile. set_makefile.sh changes all the Makefile files in the current directory. WARNING!: it will change all the Makefile files recursively, so be sure that your work directory is the source code directory. And also use this script as normal user, NO ROOT.