CVSROOT: /sources/gnash Module name: gnash Changes by: Ann Barcomb <ann> 07/05/26 10:48:19
Added files: doc/C/usermanual/installation: cross_compiling.xml Log message: Configuration instructions for cross compiling were added. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/gnash/doc/C/usermanual/installation/cross_compiling.xml?cvsroot=gnash&rev=1.1 Patches: Index: cross_compiling.xml =================================================================== RCS file: cross_compiling.xml diff -N cross_compiling.xml --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ cross_compiling.xml 26 May 2007 10:48:19 -0000 1.1 @@ -0,0 +1,72 @@ +<title>Cross Compiling</title> + +<para> + To cross configure and compile &app;, begin by building a target system + on your workstation. This includes cross compilers for the target + architecture, and some system headers. You will also need + <emphasis>libxml2</emphasis>, <emphasis>libpng</emphasis>, + <emphasis>libjpeg</emphasis>, <emphasis>sdl</emphasis>, + <emphasis>opengl</emphasis>, and <emphasis>ogg</emphasis> development + packages built for the target system. The page + <ulink url="http://frank.harvard.edu/~coldwell/toolchain/" + type="http">http://frank.harvard.edu/~coldwell/toolchain/</ulink> + has instructions on building a target system from scratch and + offers a shell script to make the process easier. +</para> +<para> + Note that you may have some difficulties getting libMesa (opengl) + to cross compile. +</para> +<para> + The important configuration options are the ones which specify the + architecture for the build: +</para> + +<variablelist> + + <varlistentry> + <term>--target</term> + <listitem> + <para> + The target architecture, where the final executables are expected + to run. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term>--host</term> + <listitem> + <para> + The host architecture, where the executables are expected + to run. Usually this is the same as the <emphasis>--target</emphasis>, + except when building a compiler as a Canadian Cross. In this + case, you might build a cross compiler on a UNIX system which + runs on a win32 machine, producing code for a third architecture, + such as ARM. In this example, <emphasis>--target</emphasis> would + be 'arm-unknown-linux-gnu', while <emphasis>--host</emphasis> would + be 'win32'. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term>--build</term> + <listitem> + <para> + This is the system the build is running on. + </para> + </listitem> + </varlistentry> + +</variablelist> + +<para> + The following example of <emphasis>configure</emphasis> builds for an + ARM system on an x86 system. It was run after an ARM system was built + in <filename>/usr/arm</filename> and other required libraries were + cross compiled. + <programlisting> + ./configure -target=arm-unknown-linux-gnu --prefix=/usr/arm --host=arm-unknown-linux-gnu --build=i686-pc-linux-gnu --disable-plugin + </programlisting> +</para> _______________________________________________ Gnash-commit mailing list Gnash-commit@gnu.org http://lists.gnu.org/mailman/listinfo/gnash-commit