File.........: C - Misc. tutorials.txt Copyrigth....: (C) 2010 Yann E. MORIN License......: Creative Commons Attribution Share Alike (CC-by-sa), v2.5 Misc. tutorials / ________________/ Using crosstool-NG on FreeBSD (and other *BSD) | -----------------------------------------------+ Contributed by: Titus von Boxberg Prerequisites and instructions for using ct-ng for building a cross toolchain on FreeBSD as host. 0) Tested on FreeBSD 8.0 1) Install (at least) the following ports archivers/lzma textproc/gsed devel/gmake devel/patch shells/bash devel/bison lang/gawk devel/automake110 ftp/wget Of course, you should have /usr/local/bin in your PATH. 2) run ct-ng's configure with the following tool configuration: ./configure --with-sed=/usr/local/bin/gsed --with-make=/usr/local/bin/gmake \ --with-patch=/usr/local/bin/gpatch [...other configure parameters as you like...] 3) proceed as described in general documentation but use gmake instead of make Using crosstool-NG on MacOS-X | ------------------------------+ Contributed by: Titus von Boxberg Prerequisites and instructions for using crosstool-NG for building a cross toolchain on MacOS as host. 0) Mac OS Snow Leopard, with Developer Tools 3.2 installed, or Mac OS Leopard, with Developer Tools & newer gcc (>= 4.3) installed via macports 1) You have to use a case sensitive file system for ct-ng's build and target directories. Use a disk or disk image with a case sensitive fs that you mount somewhere. 2) Install macports (or similar easy means of installing 3rd party software), make sure that macport's bin dir is in your PATH. Furtheron assuming it is /opt/local/bin. 3) Install (at least) the following macports ncurses lzmautils libtool binutils gsed gawk gcc43 (only necessary for Leopard OSX 10.5) On Leopard, make sure that the macport's gcc is called with the default commands (gcc, g++,...), e.g. via macport gcc_select 4) run ct-ng's configure with the following tool configuration (assuming you have installed the tools via macports in /opt/local): ./configure --with-sed=/opt/local/bin/gsed \ --with-libtool=/opt/local/bin/glibtool \ --with-objcopy=/opt/local/bin/gobjcopy \ --with-objdump=/opt/local/bin/gobjdump \ --with-readelf=/opt/local/bin/greadelf \ [...other configure parameters as you like...] 5) proceed as described in standard documentation ----- HINTS: - Apparently, GNU make's builtin variable .LIBPATTERNS is misconfigured under MacOS: It does not include lib%.dylib. This affects build of (at least) gdb-7.1 Put 'lib%.a lib%.so lib%.dylib' as .LIBPATTERNS into your environment before executing ct-ng build. See http://www.gnu.org/software/make/manual/html_node/Libraries_002fSearch.html as an explanation.