========================================================= 1. Flash Layout 8Mbytes +-----------------------+ <----0x00000000 | | | MTD1 | | (64K) | +-----------------------+ <----0x00010000 | | | MTD2 | | (64K) | +-----------------------+ <----0x00020000 | | | Linux Kernel | | (1573K) | +-----------------------+ <----0x001A0000 | | | Ramdisk | | (6488K) | +-----------------------+ <----0x007D0000 | | | uBOOT | | (196K) | +-----------------------+ <----0x00800000 ============================================================ 2. Modules compilation 1). Building uClibc toolchain tar zxvf uclibc-toolchain-src-20040609.tgz cd uclibc-toolchain-src-20040609 cd gcc-3.3.x cd make vi kernel-headers.mk change ==> LINUX_SOURCE:=kernel-headers-2.4.21.tar.bz2 --> LINUX_SOURCE:=kernel-headers-2.6.9.1.tar.bz2 qw --> save the change and leave vi cd .. make Note: some file may have updated to more new version, if you have any problem to build the toolchain, please try to change the download file version as we do above 2). Building at tar zxvf at.tgz cd at make clean;make 3). Building busybox-1.00-pre1 tar zxvf busybox-1.00-pre1.tgz cd busybox-1.00-pre1 make clean; make 4). Building confuse tar zxvf confuse.tgz cd confuse_ppc/ Please refer to the MYREADME.txt file under the confuse_ppc directory,this file teach you how to compile confuse lib. 5). Building e2fsprogs-1.32 tar zxvf e2fsprogs-1.32.tgz cd e2fsprogs-1.32 make clean; make 6). Building goahead tar zxvf goahead.tgz cd LINUX/ make 7). Building imgconvert tar zxvf imgconvert.tgz cd imgconvert make clean make 8). Buliding iTunesServer tar zxvf iTuneServer.tgz cd iTuneServer a. cd zlib-1.2.2 ./configure --prefix=/opt_arm/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm make; sudo make install cd .. b. cd libid3tag-0.15.1b ./configure --disable-debugging --prefix=/opt_arm/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm --host=arm-linux CPPFLAGS=-I/opt_arm/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm/include/ make sudo make install cd.. c. cd gdbm-1.8.3 ./configure --prefix=/opt_arm/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm --host=arm-linux make sudo make install cd.. d. cd mt-daapd-0.2.3 ./configure --disable-debug --host=arm-linux --with-gdbm-includes=/opt_arm/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm/include --with-gdbm-libs=/opt_arm/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm/lib make 9). Building linux-2.6.12.6 tar zxvf linux-2.6.12.6.tgz cd linux-2.6.12.6 ./cv.sh make menuconfig select exit select yes make clean;make uImage 10). Buliding LPRng-3.8.10 tar zxvf LPRng-3.8.10.tgz cd LPRng-3.8.10 make 11). Buliding mdadm-2.2 tar zxvf mdadm-2.2.tgz cd mdadm-2.2 make 12). Buliding module-init-tools-3.3-pre1 tar zxvf module-init-tools-3.3-pre1.tgz cd module-init-tools-3.3-pre1 make clean; make 13). Building ntp-4.2.0 tar zxvf ntp-4.2.0.tgz cd ntp-4.2.0 cd sntp make 14). Building openssl-0.7.i tar zxvf openssl-0.7.i.tgz cd openssl-0.7.i make clean; make 15). Building quota-tools tar zxvf quota-tools.tgz cd quota-tools make clean; make 16). Building samba-src tar zxvf samba-src.tgz cd source if want to build share library *************************************************************** * build share library start * *************************************************************** 1.build file Note:--> $RPATH is current work directory cd lib ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC charcnv.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC charset.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC debug.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC fault.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC getsmbpass.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC interface.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC kanji.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC md4.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC interfaces.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pidfile.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC replace.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC signal.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC system.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC sendfile.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC time.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ufc.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC genrand.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC username.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util_getent.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC access.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC smbrun.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC bitmap.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC crc32.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC snprintf.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC wins_srv.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util_str.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util_sid.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util_unistr.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util_file.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util_sock.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC util_sec.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC talloc.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC hash.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC substitute.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC fsusage.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ms_fnmatch.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC select.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC error.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC messages.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pam_errors.c cd ../smbd ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ssl.c cd ../nsswitch ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC wb_client.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC wb_common.c cd ../tdb ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC tdb.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC spinlock.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC tdbutil.c cd ../ubiqx ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ubi_BinTree.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ubi_Cache.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ubi_SplayTree.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ubi_dLinkList.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC ubi_sLinkList.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC debugparse.c cd ../passdb ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC passdb.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC secrets.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pass_check.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC smbpassfile.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC machine_sid.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pdb_smbpasswd.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pampass.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pdb_tdb.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pdb_ldap.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pdb_nisplus.c cd ../libsmb ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clientgen.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC cliconnect.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clifile.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clirap.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clierror.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC climessage.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clireadwrite.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clilist.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC cliprint.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clitrans.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clisecdesc.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clidgram.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC namequery.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC nmblib.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clistr.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC nterr.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC smbdes.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC smbencrypt.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC smberr.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC credentials.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC pwd_cache.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC clioplock.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC errormap.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC doserr.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC passchange.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC unexpected.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC namecache.c cd ../rpc_parse ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC parse_prs.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC parse_sec.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC parse_misc.c cd ../param ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC loadparm.c ../libtool --mode=compile $CC -I../popt -I../ -I../include -I../ubiqx -I../smbwrapper -O -c -fPIC -DPIC params.c cd .. ./libtool --mode=link $CC -O -o liblib_p.la lib/charcnv.lo lib/charset.lo lib/debug.lo lib/fault.lo \ lib/getsmbpass.lo lib/interface.lo lib/kanji.lo lib/md4.lo \ lib/interfaces.lo lib/pidfile.lo lib/replace.lo \ lib/signal.lo lib/system.lo lib/sendfile.lo lib/time.lo \ lib/ufc.lo lib/genrand.lo lib/username.lo lib/util_getent.lo lib/access.lo lib/smbrun.lo \ lib/bitmap.lo lib/crc32.lo lib/snprintf.lo lib/wins_srv.lo \ lib/util_str.lo lib/util_sid.lo \ lib/util_unistr.lo lib/util_file.lo \ lib/util.lo lib/util_sock.lo lib/util_sec.lo smbd/ssl.lo \ lib/talloc.lo lib/hash.lo lib/substitute.lo lib/fsusage.lo \ lib/ms_fnmatch.lo lib/select.lo lib/error.lo lib/messages.lo \ lib/pam_errors.lo nsswitch/wb_client.lo nsswitch/wb_common.lo \ tdb/tdb.lo tdb/spinlock.lo tdb/tdbutil.lo -rpath $RPATH -lm ./libtool --mode=link $CC -O -o libubiqx_p.la ubiqx/ubi_BinTree.lo ubiqx/ubi_Cache.lo ubiqx/ubi_SplayTree.lo \ ubiqx/ubi_dLinkList.lo ubiqx/ubi_sLinkList.lo ubiqx/debugparse.lo -rpath $RPATH -lm ./libtool --mode=link $CC -O -o libpassdb_p.la passdb/passdb.lo passdb/secrets.lo \ passdb/pass_check.lo passdb/smbpassfile.lo \ passdb/machine_sid.lo passdb/pdb_smbpasswd.lo \ passdb/pampass.lo passdb/pdb_tdb.lo passdb/pdb_ldap.lo \ passdb/pdb_nisplus.lo -rpath $RPATH -lm ./libtool --mode=link $CC -O -o libsmb_p.la libsmb/clientgen.lo libsmb/cliconnect.lo libsmb/clifile.lo \ libsmb/clirap.lo libsmb/clierror.lo libsmb/climessage.lo \ libsmb/clireadwrite.lo libsmb/clilist.lo libsmb/cliprint.lo \ libsmb/clitrans.lo libsmb/clisecdesc.lo libsmb/clidgram.lo \ libsmb/namequery.lo libsmb/nmblib.lo libsmb/clistr.lo \ libsmb/nterr.lo libsmb/smbdes.lo libsmb/smbencrypt.lo \ libsmb/smberr.lo libsmb/credentials.lo libsmb/pwd_cache.lo \ libsmb/clioplock.lo libsmb/errormap.lo libsmb/doserr.lo \ libsmb/passchange.lo libsmb/unexpected.lo \ rpc_parse/parse_prs.lo rpc_parse/parse_sec.lo rpc_parse/parse_misc.lo \ libsmb/namecache.lo -rpath $RPATH -lm ./libtool --mode=link $CC -O -o libparam_p.la param/loadparm.lo param/params.lo -rpath $RPATH -lm 2.copy share library to toolchain library folder powerpc-linux-uclibc ./libs/liblib_p.so.0.0.0 , libubiqx_p.so.0.0.0 , libpassdb_p.so.0.0.0 , libsmb_p.so.0.0.0 , libparam_p.so.0.0.0 to 3.go to toolchain library folder powerpc-linux-uclibc/lib do share library link , link -s liblib_p.so.0.0.0 liblib_p.so.0 link -s liblib_p.so.0.0.0 liblib_p.so link -s libubiqx_p.so.0.0.0 libubiqx_p.so.0 link -s libubiqx_p.so.0.0.0 libubiqx_p.so link -s libpassdb_p.so.0.0.0 libpassdb_p.so.0 link -s libpassdb_p.so.0.0.0 libpassdb_p.so link -s libsmb_p.so.0.0.0 libsmb_p.so.0 link -s libsmb_p.so.0.0.0 libsmb_p.so link -s libparam_p.so.0.0.0 libparam_p.so.0 link -s libparam_p.so.0.0.0 libparam_p.so *************************************************************** * build share library end * *************************************************************** make clean;make 17). Building tinylogin-1.4 tar zxvf tinylogin-.1.4.tgz cd tinylogin-.1.4 make clean;make 18). Building u-boot-1_1_1 for 5181 chip tar zxvf u-boot-1_1_1.tgz chmod -R a+w u-boot-1_1_1 cd u-boot-1_1_1 make clean; make 19). Building u-boot-1_7_3 for 5182 chip tar zxvf u-boot-1_7_3.tgz chmod -R a+w u-boot-1_7_3 cd u-boot-1_7_3 make mrproper; make rd88f5182_config 20). Building util-linux-2.12r tar zxvf util-linux-2.12r.tgz cd util-linux-2.12r make 21). Building wget-LFS tar zxvf wget-LFS.tgz cd wget-LFS make clean;make 22). Building wu-ftpd-2.6.2 tar zxvf wu-ftpd.2.6.2.tgz cd wu-ftpd-2.6.2 make clean;make 23). Building jpegsr6 tar zxvf jpegsr6.tgz cd jpegsr6 note : please reference to readme for building this lib, no modification from us 24). Building libiconv-1.9.2 tar zxvf libiconv-1.9.2.tgz cd libiconv-1.9.2 note : please reference to readme for building this lib, no modification from us 25). Building sqlite-3.3.7 tar zxvf sqlite-3.3.7.tgz cd sqlite-3.3.7 note : please reference to readme for building this lib, no modification from us