Confirmed users
2,023
edits
No edit summary |
|||
| Line 1: | Line 1: | ||
==set up scratchbox== | ==set up scratchbox== | ||
The maemo SDK is based around a tool called scratchbox. This essentially let's you pretend you're not cross compiling. To set it up, Nokia has written a very useful script | |||
<code><pre> | <code><pre> | ||
wget http://repository.maemo.org/stable/chinook/maemo-scratchbox-install_4.0.sh | wget http://repository.maemo.org/stable/chinook/maemo-scratchbox-install_4.0.sh | ||
| Line 9: | Line 12: | ||
==set up maemo chinook sdk== | ==set up maemo chinook sdk== | ||
you need to create a new shell so your user | |||
Once you have set up scratchbox, you will need to install the maemo tool chain. Again, Nokia has provided a very useful script to install this for you. Simply accept the defaults and type "I accept" at the appropriate time. | |||
'''Note:''' you need to create a new login shell so your user is in the sbox group. you can just log out and log back in | |||
<code><pre> | <code><pre> | ||
wget http://tablets-dev.nokia.com/4.0/maemo-sdk-install_4.0.sh | wget http://tablets-dev.nokia.com/4.0/maemo-sdk-install_4.0.sh | ||
| Line 21: | Line 27: | ||
==Build libIDL== | ==Build libIDL== | ||
The the maemo SDK comes with just about everything required to build mozilla. The one thing that is missing is libIDL. The simplest thing to do is build it: | |||
<code><pre> | <code><pre> | ||
wget http://ftp.gnome.org/pub/gnome/sources/libIDL/0.8/libIDL-0.8.9.tar.gz | wget http://ftp.gnome.org/pub/gnome/sources/libIDL/0.8/libIDL-0.8.9.tar.gz | ||
| Line 32: | Line 41: | ||
==Build the the trunk (mozilla 1.9)== | ==Build the the trunk (mozilla 1.9)== | ||
Finally, you are ready to build. | |||
<code><pre> | <code><pre> | ||
export PKG_CONFIG_PATH=/usr/lib/pkgconfig/:/usr/local/lib/pkgconfig/ | export PKG_CONFIG_PATH=/usr/lib/pkgconfig/:/usr/local/lib/pkgconfig/ | ||
| Line 45: | Line 57: | ||
make -f client.mk build_all | make -f client.mk build_all | ||
</pre></code> | </pre></code> | ||
==Run It!== | |||
To run your build in scratchbox, you'll need to install xephyr. Fortunately if you are on a debian based system, this couldn't be easier. Just run: | |||
<code><pre>sudo apt-get install xserver-xephyr</pre></code> | |||
To start the xephyr server, run the following from the host machine: | |||
<code><pre>Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -extension Composite</pre></code> | |||
once the xephyr xserver is running, you can launch your build from within scratchbox: | |||
<code><pre> | |||
$ scratchbox | |||
[sbox-CHINOOK_X86:~] > export DISPLAY=:2 | |||
[sbox-CHINOOK_X86:~] > af-sb-init.sh start | |||
[sbox-CHINOOK_X86:~] > cd moz1.9/mozilla/obj-dir-browser-chinook-armel/dist/bin | |||
[sbox-CHINOOK_X86:~] > GRE_HOME=. ./run_mozilla.sh ./TestGtkEmbed | |||
or | |||
[sbox-CHINOOK_X86:~] > GRE_HOME=. ./run_mozilla.sh ./firefox | |||
</pre></code> | |||
==Convenient scripts== | |||
The following scripts can help speed up the process. You don't even have to start the scratch box shell if you run them with the following commands: | |||
<code><pre> | |||
cat buildlibIDL19.sh | scratchbox -s -p | |||
cat buildmoz19.sh | scratchbox -s -p | |||
</code></pre> | |||
[[buildlibIDL19.sh]] | |||
[[buildmoz19.sh]] | |||