Well it's not realy a new toolchain, it is DjWillis' one with a few twists. Changes include :
- all the libraries on the pandora from the (yet to be officially annonced) openpandora repos,
- all the requiered *-config script with paths fixed,
- Libtools config files path fixed too,
- lua5.1.pc included,
- a reworked environnement-setup file to be more conveniant
- Installable anywhere
- dependencies supported
- Ivanovic's wrapper-scripts included
- support qmake,Makfiles,autotools,cmake
How to update from previous installation ?
See this post.
How to install it ?
There is 2 way to install this :
1) On your own linux box (should be 32bits ready), here are the steps :
- Download the SDK file(torrent) (check the file size)
- extract it (you'll need either to be root, or have created the directory /usr/local/angstrom/arm and give read/write to the user extracting) :
tar -C /usr/local/angstrom/arm -xjf pandora-toolchain-20110313.tar.bz2
- Fix the file permission :
sudo chown -R <your-name>.<your-name> /usr/local/angstrom/arm
- Run the installer
- Reload your shell (so the bashrc modification are know to your shell)
(the user in the image is devel and it's password is devel too)
To be easy to use (and to build), this have a few expectations :
- You ca install it everywhere. You'll have to create it's directory first and don't forget to run the installer.
- It expect that all your sources will be sub-folders of $HOME/Pandora, this is configurable though (see PROJECTS_BASEDIR)
- It expect that you will install into a sub-directory of /mnt/utmp. Once again, that's configurable.
- It expect that you wants your produced PND goes into $HOME/Pandora/PNDs. Once again, you can configure that in the environnement-setup file.
How to use it ?
Let's say, you want to build a lightweight version of audacious (mine does pack way more stuff).
Create your working directory for the project :
mkdir ~/Pandora/audaciousSetup your environnement :
setprj audaciousThis will get you in your working directory, set everything requiered to build pandora binaries ; ready this environnement to use the libraries you'll include in the PND.
Download the minimal source code and extract them :
wget http://distfiles.atheme.org/libmcs-0.7.2.tgz wget http://distfiles.atheme.org/libmowgli-0.7.1.tgz wget http://distfiles.atheme.org/audacious-2.4.3.tgz tar xf libmcs-0.7.2.tgz tar xf libmowgli-0.7.1.tgz tar xf audacious-2.4.3.tgzBuild and install libmowgli :
cd libmowgli* pndconfigure make all install cd ..Build and install libmcs :
cd libmcs* pndconfigure make all install cd ..Finally build and install audacious. This one have SSE2 (x86 optimisation) enabled by default, let's disable that :
cd audacious* pndconfigure --disable-sse2 make all installCreate a PXML file and a startup script :
genpxmlEdit /mnt/utmp/audacious/PXML.xml file to make sure it is valid (sometimes the script does bad things. And as it guess the quatogories out of the .desktop file the developper have done, they are wrong sometime .
Make sure you have an icon for it at /mnt/utmp/audacious/icon.png
Finally build the PND :
pndmakeautoAnd upload $HOME/Pandora/PNDs/audacious.pnd that where you want
But what if the project dont use the autotools (the configure script) ?
If it use Cmake, you're lucky : use pndcmake instead of pndconfigure
If it use qmake, you're lucky : use pndqmake instead of pndconfigure
If it use scons,
But it use simple Makefile :
Make sure of 2 things :
- the Makefile dont force CC and CXX value (and have a look at how it handle CFLAGS and LDFLAGS too)
- the Makefile use $(CC) to build c files and use $(CXX) to build cpp files (and link with the same compiler)
Edited by sebt3, 26 September 2011 - 03:52 PM.