Editing Miniature/Development/Instructions
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
== Getting started - plot summary == | == Getting started - plot summary == | ||
- | WARNING: This list does not necessarily explain what every step does, nor will it help you in case you run into problems! Also, I will assume your host machine has a i386 architecture (I use Jaunty, 64 bit installation instructions are | + | WARNING: This list does not necessarily explain what every step does, nor will it help you in case you run into problems! Also, I will assume your host machine has a i386 architecture (I use Jaunty, 64 bit installation instructions are only slightly different). |
=== Scratchbox installation === | === Scratchbox installation === | ||
- | [[Documentation/Maemo5_Final_Installation|Read the director's cut]] if you run into problems, it has become very accurate! Again, you have been warned | + | [[Documentation/Maemo5_Final_Installation|Read the director's cut]] if you run into problems, it has become very accurate! Again, you have been warned: |
On the host machine (= your computer, the other side is inside scratchbox, your cross compiling environment to create binaries/packages for the N900): | On the host machine (= your computer, the other side is inside scratchbox, your cross compiling environment to create binaries/packages for the N900): | ||
- | $ sudo | + | $ sudo vim /etc/sysctl.conf |
Copy and paste those three lines to the top: | Copy and paste those three lines to the top: | ||
#maemo | #maemo | ||
vm.vdso_enabled = 0 | vm.vdso_enabled = 0 | ||
vm.mmap_min_addr = 4096 | vm.mmap_min_addr = 4096 | ||
- | |||
- | |||
- | |||
- | |||
- | |||
Start with the Maemo SDK installation: | Start with the Maemo SDK installation: | ||
Line 45: | Line 17: | ||
$ wget http://repository.maemo.org/stable/5.0/maemo-sdk-install_5.0.sh | $ wget http://repository.maemo.org/stable/5.0/maemo-sdk-install_5.0.sh | ||
$ chmod a+x ./maemo-scratchbox-install_5.0.sh | $ chmod a+x ./maemo-scratchbox-install_5.0.sh | ||
+ | $ ./maemo-sdk-install_5.0.sh | ||
$ sudo ./maemo-scratchbox-install_5.0.sh -u USER | $ sudo ./maemo-scratchbox-install_5.0.sh -u USER | ||
$ newgrp sbox | $ newgrp sbox | ||
- | |||
$ ./maemo-sdk-install_5.0.sh | $ ./maemo-sdk-install_5.0.sh | ||
$ /scratchbox/login | $ /scratchbox/login | ||
- | |||
- | |||
[http://tablets-dev.nokia.com/eula/index.php Get tokenized Maemo/Nokia repo here], enter token code and keep page open. You'll soon need the repo link. | [http://tablets-dev.nokia.com/eula/index.php Get tokenized Maemo/Nokia repo here], enter token code and keep page open. You'll soon need the repo link. | ||
Line 59: | Line 29: | ||
[sbox-FREMANTLE_X86: ~] > fakeroot apt-get update #simply repeat if it aborts in-between, ignore bad GPG | [sbox-FREMANTLE_X86: ~] > fakeroot apt-get update #simply repeat if it aborts in-between, ignore bad GPG | ||
[sbox-FREMANTLE_X86: ~] > fakeroot apt-get install nokia-binaries #repeat if interrupted/incomplete | [sbox-FREMANTLE_X86: ~] > fakeroot apt-get install nokia-binaries #repeat if interrupted/incomplete | ||
- | [sbox-FREMANTLE_X86: ~] > fakeroot apt-get install libqt4 | + | [sbox-FREMANTLE_X86: ~] > fakeroot apt-get install libqt4-dev |
- | + | ||
Now do the same for the ARMEL target (= same architecture as device): | Now do the same for the ARMEL target (= same architecture as device): | ||
[sbox-FREMANTLE_X86: ~] sb-conf select FREMANTLE_ARMEL | [sbox-FREMANTLE_X86: ~] sb-conf select FREMANTLE_ARMEL | ||
[sbox-FREMANTLE_ARMEL: ~] > fakeroot echo "<repo link from token page>" >> /etc/apt/sources.list | [sbox-FREMANTLE_ARMEL: ~] > fakeroot echo "<repo link from token page>" >> /etc/apt/sources.list | ||
- | [sbox-FREMANTLE_ARMEL: ~] > fakeroot apt-get update #simply repeat if it aborts in-between, ignore | + | [sbox-FREMANTLE_ARMEL: ~] > fakeroot apt-get update #simply repeat if it aborts in-between b/c of bad inet or such, ignore the GPG warning at the end |
- | [sbox-FREMANTLE_ARMEL: ~] > fakeroot apt-get install nokia-binaries | + | [sbox-FREMANTLE_ARMEL: ~] > fakeroot apt-get install nokia-binaries |
- | [sbox-FREMANTLE_ARMEL: ~] > fakeroot apt-get install libqt4 | + | [sbox-FREMANTLE_ARMEL: ~] > fakeroot apt-get install libqt4-dev |
=== Compiling Miniature inside Scratchbox === | === Compiling Miniature inside Scratchbox === | ||
- | Back to the FREMANTLE_X86 target, so you can run Miniature from inside scratchbox. Use your *private* gitorious | + | Back to the FREMANTLE_X86 target, so you can run Miniature from inside scratchbox. Use your *private* gitorious instead of the public clone url if you want to push changes, too. |
[sbox-FREMANTLE_ARMEL: ~] sb-conf select FREMANTLE_X86 | [sbox-FREMANTLE_ARMEL: ~] sb-conf select FREMANTLE_X86 | ||
[sbox-FREMANTLE_X86: ~] mkdir source | [sbox-FREMANTLE_X86: ~] mkdir source | ||
- | |||
[sbox-FREMANTLE_X86: ~] git clone git://gitorious.org/miniature/miniature.git | [sbox-FREMANTLE_X86: ~] git clone git://gitorious.org/miniature/miniature.git | ||
[sbox-FREMANTLE_X86: ~] cd miniature | [sbox-FREMANTLE_X86: ~] cd miniature | ||
- | [sbox-FREMANTLE_X86: ~] ./autogen.sh | + | [sbox-FREMANTLE_X86: ~] ./autogen.sh && make |
On your host machine (i.e., outside of scratchbox, do not close your sb session though): | On your host machine (i.e., outside of scratchbox, do not close your sb session though): | ||
Line 90: | Line 58: | ||
If you managed to do all this in under one hour consider yourself lucky - you saved yourself a alot of time! | If you managed to do all this in under one hour consider yourself lucky - you saved yourself a alot of time! | ||
+ | |||
+ | === Closing scratchbox === | ||
+ | Do *not* ignore this section, sb uses dark symlink magic which can mess up your system! | ||
+ | |||
+ | Inside scratchbox: | ||
+ | [sbox-FREMANTLE_X86: ~] sb-menu | ||
+ | Go to "Killall", confirm with enter twice. Only now close your session | ||
+ | |||
+ | On your host: | ||
+ | $ /etc/init.d/scratchbox-core stop | ||
+ | |||
+ | If you get an error message be very careful with what you delete and what data you move around. Scratchbox might still have active symlink pointing to folders on your *host machine*. Your best solution, if you don't know what else to do, is a clean restart of your host machine! | ||
=== Compiling binaries for the N900 === | === Compiling binaries for the N900 === | ||
Line 98: | Line 78: | ||
[sbox-FREMANTLE_ARMEL: ~] cd ~/source/miniature | [sbox-FREMANTLE_ARMEL: ~] cd ~/source/miniature | ||
[sbox-FREMANTLE_ARMEL: ~] make distclean # dont worry if this fails | [sbox-FREMANTLE_ARMEL: ~] make distclean # dont worry if this fails | ||
- | [sbox-FREMANTLE_ARMEL: ~] ./autogen.sh | + | [sbox-FREMANTLE_ARMEL: ~] ./autogen.sh && make |
Copy the binary onto the device (even if totally unsecure: let's just assume opensshd is installed and running on your N900): | Copy the binary onto the device (even if totally unsecure: let's just assume opensshd is installed and running on your N900): | ||
Line 110: | Line 90: | ||
Enjoy! | Enjoy! | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- |
Learn more about Contributing to the wiki.