Reply
Thread Tools
Posts: 393 | Thanked: 112 times | Joined on Jul 2007
#1
Setup the Chinook SDK yesterday as I'll be starting a few N810 based projects soon. My first proper foray into Linux/Maemo coding should be fun.


Glad to say the process was relatively painless, unlike the previous versions that required some level of majick.

Simply followed the instructions here: http://tablets-dev.nokia.com/4.0/INSTALL.txt

Stepwise:
1) wget both installer scripts and chmod a+x both
2) sudo run the scratchbox installer
3) setup the scratchbox user then restart Linux.
4) sh maemo installer
5) install EUSA binaries in both scratchbox environments - 'fakeroot apt-get install maemo-explicit' for both armel (CHINOOK_ARMEL) and i386 (CHINOOK_X86) targets
6) sudo apt-get install xserver-xephyr, and just for fun... apt-get install xoo
7) scratchbox is now setup, run scratchbox. Nano .bashrc and "export DISPLAY=:2"

8) Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -extension Composite
9) af-init.sh start and all was well

Alternatively if you've installed the 'just for fun' bit...instead of Xephyr...
8a) run xoo, then kill xoo. Run gconf-editor and setup the default values for xoo: '/usr/bin/Xephyr' ':2 -host-cursor -screen 800x480x16 -dpi 96 -ac -extension Composite' etc
8b) download the N series xml config and png files - if you 'svn co' from the xoo repo you'll find the xml and png files in the data directory; just copy them into /usr/share/xoo ... another N800 image can be found here: http://tuxrecife.blogspot.com/search/label/n800%20nokia but I prefer the original xoo one.
8c) xoo -d nokia-n800.xml


10) Finish by adding nice little launchers on your desktop for Xephyr, Xoo and scratchbox.





I'm interested in knowing what IDE's (if any) you'd recommend. Basically how've you setup your dev environments so you can edit, compile, get running and debug from within Scratchbox with minimal fuss.

Also pretty much interested in the process of edit, compile, get running on the N8x0 and debug on the N8x0 with minimal fuss since I'll be using the Camera API.


It's the minimal fuss bit I'm interested in; I can compile things manually, copy them to the respective locations and run them alright - I would prefer a "one-click-does-all" solution.
 

The Following 3 Users Say Thank You to yabbas For This Useful Post:
iball's Avatar
Posts: 729 | Thanked: 19 times | Joined on Mar 2007
#2
I'll be installing Ubuntu Gibbon in VMware on my Macbook Pro tonight and then setting up a Chinook dev environment since I'm now running OS2008 on my N800.
Thanks for the easy 1-10 install overview.
__________________
Kicking Nokia in the jimmy, one marketing exec at a time.
Originally Posted by Mr. T
Well maybe Mr. T hacked the game, and made a mowhawk class? And maybe Mr. T is pretty handy with computers? Had that occurred to you Mr. Condescending Director?
 
Posts: 474 | Thanked: 30 times | Joined on Jan 2006
#3
Pluthon is a fantastically convenient app for doing this with Python.

If you want one-click-does-all, you're more or less SOL: that said, if you set up proper Debian control files (dhmake is a great place to start) it's just dpkg-buildpackage to do the whole thing. Getting an IDE to run inside scratchbox is quite difficult.

That said, using CodeBlocks outside of scratchbox, and then compiling in scratchbox, is how I do it.
 

The Following User Says Thank You to aleksandyr For This Useful Post:
Posts: 393 | Thanked: 112 times | Joined on Jul 2007
#4
Cheers Aleks exactly the sort of advice I'm after.


Anyone else out there talk to me about dev envs? Browsing garage - there appears to be a project called Esbox that sounds interesting.
 
penguinbait's Avatar
Posts: 3,096 | Thanked: 1,525 times | Joined on Jan 2006 @ Michigan, USA
#5
I have never ever used xepher so I cant speak to that. I have never used x86 either. I install via both scripts you pointed out. I switch to, well CHINOOK, places you in ARMEL after install, BORA you defaulted to x86, but anyway.

Now I am not a developer, so I am not writing code, just some scripts.

The first thing I do after setting up scratchbox is backup /scratchbox

tar cjvf scratchbox.tar.bz2 /scratchbox

You can also use that to have multiple scratchboxes runing, but that is another post

Then I login to scratchbox and I take a inventory of what on the machine

FIND ALL THE FILES
find /targets/CHINOOK_ARMEL -type f > BEFORE.out

FIND ALL THE LINKS (-TYPE L)
find /targets/CHINOOK_ARMEL -type l >> BEFORE.out

Then I also do a full for reference
find /targets/CHINOOK_ARMEL > BEFORE-all.out

Now I compile whatever I want, compiling whatever deps are needed first.

when I am done with a package or multiple packages I then do another invertory and tar them up

Compile qt
Compile kdelibs
Compile kdebase

FIND ALL THE FILES
find /targets/CHINOOK_ARMEL -type f > AFTER.out

FIND ALL THE LINKS (-TYPE L)
find /targets/CHINOOK_ARMEL -type l >> AFTER.out


Now I have a before and a after, now diff

diff BEFORE.out AFTER.out | grep "^>" | awk -F CHINOOK_ARMEL '{print $2}' > FILES.out


Now FILES.out contains all the new files you installed.

Now you want to extract them for use.

cd /targets/CHINOOK_ARMEL
tar -T /path/to/FILES.out -cjvf /home/user/FILES.tar

Now you have a tar archive of your newly compiled software.


Now again I am not a developer, there may be better ways to do this, but I did it how I knew how
 

The Following 2 Users Say Thank You to penguinbait For This Useful Post:
free's Avatar
Posts: 739 | Thanked: 159 times | Joined on Sep 2007 @ Germany - Munich
#6
Anybody using chroot on the device for testing new apps?

This would ensure that we have a default system (not with libs that other don't have) and that it should work on every device.

Could be usefull for checking that it runs on 770, 800, ... (only the kernel doesn't change in a chroot)
 
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 06:48.