![]() |
Cross build environmentGet MasterMakefile by following MasterMakefile cd ~/slug make setup-optware (or make setup-optware-developer) make update-optware make setup-slugos-4.8-beta make update-openembedded Build the slugosbe toolchain, easiest to do (might be overkill) make slugosbe-image Or, do the following for Building the minimum required toolchaincd ~/slug/slugosbe . ./setup-env bb virtual/armeb-linux-gcc virtual/libc The above step will take quite a while to finish, also allow at least 2.2GB disk space for ~/slug/slugosbe/tmp. The resulting toolchain is under ~/slug/slugosbe/tmp/cross and takes less than 100MB. You'll be able to safely remove the directories 'work' (~1.7GB) and 'deploy' (~14MB) from within '~/slug/slugosbe/tmp/' after the toolchain build if you need the space. These directories will be re-created and populated as needed by subsequent package builds. You may find the command '. ./setup-env' causes your shell to close. This is due to a dependency satisfied in the beginning of the make process for the slugosbe-image target. The specific dependency appears to be a file 'tempdir.conf' but this has not been confirmed. It has been demonstrated that to satisfy this dependency, you can 'make slugosbe-image' then Ctrl-C out of it as soon as the bitbake files start being processed. Use the following two commands to work around the shell-closing problem. sed -i -e 's/^MACHINE[[:space:]]*=[[:space:]]*\".*\"/MACHINE = \"nslu2be\"/' conf/auto.conf echo "TOPDIR='`pwd`'" >conf/topdir.conf. conf/topdir.conf && test "`pwd`" = "$TOPDIR" || \ echo "TOPDIR='`pwd`'" > conf/topdir.conf Building release-specific minimum required toolchainsYou may also want to be able to get a toolchain suitable for building packages compatible with a specific release such as 'slugos-4.8-beta'. This can be accomplished using the MasterMakefile target 'setup-slugos-4.8-beta' in place of 'setup-slugosbe' used at the top of this file, so, in order to create a toolchain suitable bor building release 3.10 compatible packages, you would do the following: cd ~/slug make setup-slugos-4.8-beta cd ~slug/releases/slugos-4.8-beta . ./setup-env bb virtual/armeb-linux-gcc virtual/libc This procedure should also be effective for any OE based slugos release for which you know the setup target in the MasterMakefile. In the case of slugos 3.10-beta, the created temp directory is 'openslug-nslu2.tmp'. The same guidelines as above apply for deleting the 'work' and 'deploy' directories in order to save space after the toolchain build. Now optware slugosbe specific setupcd ~/slug make optware/slugosbe/.configured cd ~/slug/optware/slugosbe make directories ipkg-utils Now you're ready to make some package, e.g. make which-dirclean which-check make unrar-dirclean unrar-check Native build environmentPrecondition: slugosbe installed; slugosbe bootstrapped To be refined... (Need to specify what slugosbe packages and what optware packages are needed) mkdir -p ~/slug/downloads cd ~/slug svn co http://svn.nslu2-linux.org/svnroot/optware/trunk optware make -C optware slugosbe-target cd optware; ln -s ../downloads . cd ~/slug/optware/slugosbe make directories ipkg-utils Now you're ready to make some package (optionally setup Distcc to speed up compilation). make which-dirclean which-check make unrar-dirclean unrar-check |