Installing Cell SDK under Ubuntu (on PS3) by Oliver Sinnen, University of Auckland The following instructions describe how to install the CellSDK 2.1 under Ubuntu on the Playstation 3. They are based on those given at http://blog.gammal.org/2007/06/installing-cell-sdk-under-ubuntu.html, modified and extended for the installation on the PS3. The CellSDK 2.1 is provided by IBM for the Fedora Linux distribution only. The main hurdle to install it under Ubuntu is the different package management system used under Ubuntu. Fedora uses rpm, while Ubuntu, as a Debian derative, uses deb. Installation can still be achieved, following these steps: 1) Install the required packages: ($ denotes the console prompt) $ apt-get install rpm freeglut3 freeglut3-dev libxmu-dev libxext-dev gcc make perl rsync flex byacc tk8.4 tcl8.4 libelf1 bash gawk libc6-dev-ppc64 libnetpbm10-dev libnuma-dev numactl 2) Ubuntu doesn't use bash (it uses dash), but the installation script of the CellSDK requires bash. Step 1 already installed bash (if it was not already). All left to do is to change the symbolic link/bin/sh to make bash default. $ cd /bin/ $ rm sh $ ln -s bash sh (To verify the correct link use ls -l /bin/sh. It should now point to bash.) 3) A similar thing happens with the version of awk. Ubuntu uses mawk, but CellSDK expects gawk. This can be changed with: $ update-alternatives --set awk /usr/bin/gawk 4) The CellSDK installation script checks for rpm dependencies and the system architecture. Both will fail, but we already installed all necessary packages in step 1 and the script will install the correct rpms for the ppc64 architecture of the PS3. We just need to make sure that rpm does not check before installation. This is done by adding two parameters (--nodeps --ingnorearch) to every rpm command in the script. We do this with: $ sed -i 's/rpm -i/rpm -i --nodeps --ignorearch/g' [sdk_path]/software/cellsdk [The SDK comes as an .iso CD image. In order to make this modification, you must first copy its content to a writeable medium. [sdk_path] is the path to the directory to where it was copied.] 5) Make sone symlinks: $ cd /usr/lib $ ln -s libtcl8.4.so.0 libtcl8.4.so $ ln -s libtk8.4.so.0 libtk8.4.so $ cd /usr/include/gnu $ ln -s /usr/include/powerpc64-linux-gnu/gnu/stubs-64.h stubs-64.h 6) Run the installation script as root: $ cd [sdk_path]/software $ sudo ./cellsdk install Ignore the warnings about missing packages and wrong platform (see step 4). 7) Build everything $ sudo ./cellsdk build --gcc 8) The SPEs are accessed through a virtual file system called spufs. To integrate this add the following line to /etc/fstab: none /spu spufs defaults 0 0 Afterwards do $ mkdir /spu $ mount /spu You can now run the test programs of the CellSDK.