Difference between revisions of "Installing Cell Broadband Engine SDK"

From ArchWiki
Jump to: navigation, search
m (Get ISOs and build the SDK)
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:Emulators (English)]]
+
[[Category:Emulators]]
[[Category:HOWTOs (English)]]
+
  
The CBE SDK installation only supports the Fedora 7 or RHEL linux distributions. I managed to install it on my Arch Linux system with the help of [http://forums.gentoo.org/viewtopic-t-685982.html a post in the gentoo forum], and doing some trial/error.
+
The CBE SDK installation only supports the Fedora 9 or RHEL linux distributions. I managed to install it on my Arch Linux system with the help of [http://forums.gentoo.org/viewtopic-t-685982.html a post in the gentoo forum], and doing some trial/error.
  
  
Line 11: Line 10:
 
Core repository:
 
Core repository:
 
*gcc 4.x
 
*gcc 4.x
*glibc 2.4
+
*glibc
 
*perl 5.x
 
*perl 5.x
*[http://www.casino-spielen.biz/spielautomat automaten spiele]
 
 
*freeglut
 
*freeglut
 
*gawk
 
*gawk
Line 20: Line 18:
 
Extra repository:
 
Extra repository:
 
*rpmextract
 
*rpmextract
 +
*tcl
 +
*tk
  
 
To make sure all of these are installed:
 
To make sure all of these are installed:
  # pacman -S gcc glibc perl freeglut gawk bison flex rpmextract
+
  # pacman -S gcc glibc perl freeglut gawk bison flex rpmextract tcl tk
 
+
 
+
The simulator requires tk and tcl in pre-8.5 versions, and compiled without thread support.
+
 
+
====tcl/tk-8.4.x without threads====
+
There are problems running the simulator when pthreads are enabled, so we need to build tcl/tk without threads. To do this, we create another dir in the /var/abs/local and make a new PKGBUILD.
+
# mkdir /var/abs/local/tcl
+
# cd /var/abs/local/tcl
+
# nano -w PKGBUILD
+
 
+
The PKGBUILD file (just the enable-threads in the ./configure should be eliminated from the original PKGBUILD file you can retrieve from ABS):
+
 
+
# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
+
# Maintainer: dorphell <dorphell@archlinux.org>
+
# Committer: Judd Vinet <jvinet@zeroflux.org>
+
pkgname=tcl
+
pkgver=8.4.19
+
pkgrel=1
+
pkgdesc="The Tcl scripting language"
+
arch=('i686' 'x86_64')
+
license=('custom')
+
depends=(glibc)
+
source=(http://downloads.sourceforge.net/sourceforge/tcl/tcl${pkgver}-src.tar.gz)
+
url="http://tcl.sourceforge.net/"
+
md5sums=('ade2c033a7b545ee108f3fdfeb629fcf')
+
+
build() {
+
  cd ${startdir}/src/tcl${pkgver}/unix
+
if [ "$CARCH" = "x86_64" ]; then
+
  ./configure --prefix=/usr --disable-threads --enable-64bit
+
  else  ./configure --prefix=/usr --disable-threads --disable-64bit
+
fi
+
  make || return 1
+
  make INSTALL_ROOT=${startdir}/pkg install install-private-headers
+
  ln -sf tclsh8.5 ${startdir}/pkg/usr/bin/tclsh
+
  # install license
+
  install -Dm644 ../license.terms $startdir/pkg/usr/share/licenses/$pkgname/LICENSE
+
+
+
  # remove buildroot traces / fixes #3602
+
  sed -i \
+
  -e "s,^TCL_BUILD_LIB_SPEC='-L.*/unix,TCL_BUILD_LIB_SPEC='-L/usr/lib," \
+
  -e "s,^TCL_SRC_DIR='.*',TCL_SRC_DIR='/usr/include'," \
+
  -e "s,^TCL_BUILD_STUB_LIB_SPEC='-L.*/unix,TCL_BUILD_STUB_LIB_SPEC='-L/usr/lib," \
+
  -e "s,^TCL_BUILD_STUB_LIB_PATH='.*/unix,TCL_BUILD_STUB_LIB_PATH='/usr/lib," \
+
  -e "s,^TCL_LIB_FILE='libtcl8.5..TCL_DBGX..so',TCL_LIB_FILE=\"libtcl8.5\$\{TCL_DBGX\}.so\"," \
+
  -e "s,^TCL_CC_SEARCH_FLAGS='\(.*\)',TCL_CC_SEARCH_FLAGS='\1:/usr/lib'," \
+
  -e "s,^TCL_LD_SEARCH_FLAGS='\(.*\)',TCL_LD_SEARCH_FLAGS='\1:/usr/lib'," \
+
  $startdir/pkg/usr/lib/tclConfig.sh
+
}
+
 
+
Make the non-threaded package and install it:
+
# makepkg
+
# pacman -U tcl-8.4.19-1.pkg.tar.gz
+
If newer versions of tcl/tk become available, the non-threaded version will be overriden by the default threaded version. The new version and PKGBUILD from ABS can be adapted and installed in the same way or updates could be stopped by adding
+
'IgnorePkg = tcl tk'
+
to your /etc/pacman.conf file.
+
  
  
 
=Installation=
 
=Installation=
 
===Get ISOs and build the SDK===
 
===Get ISOs and build the SDK===
You'll have to download the two 3.0 SDK ISOs for Fedora 7 manually from [http://www.ibm.com/developerworks/power/cell/pkgdownloads.html?S_TACT=105AGX16&S_CMP=LP IBMs website], which requires free registration. Place them in a build folder, and get the [http://aur.archlinux.org/packages.php?ID=17060 cellsdk build files from the AUR], and place them in the same folder. Now the SDK is ready to be build, but you will have to do it as root because the PKGBUILD uses mount of loop-devices to extract packages from the ISOs. Build the SDK by running:
+
You'll have to download the two 3.1 SDK ISOs (Developer, Extra) for Fedora 9 manually from IBM's website, which requires free registration. Place them in a build folder, and get the [https://aur.archlinux.org/packages.php?ID=17060 cellsdk build files from the AUR], and place them in the same folder. Now the SDK is ready to be build, but you will have to do it as root because the PKGBUILD uses mount of loop-devices to extract packages from the ISOs. Build the SDK by running:
 
  sudo makepkg --asroot
 
  sudo makepkg --asroot
  
Now a cellsdk-3.0-1-x86_64.pkg.tar.gz should be ready for installation! Just run
+
Now a cellsdk-3.1-1-x86_64.pkg.tar.gz should be ready for installation! Just run
  sudo pacman -A cellsdk-3.0-1-x86_64.pkg.tar.gz
+
  sudo pacman -A cellsdk-3.1-1-x86_64.pkg.tar.gz
 
and now the SDK is installed and ready for use.
 
and now the SDK is installed and ready for use.
  
 
=Running the Simulator=
 
=Running the Simulator=
Go to /opt/ibm/systemsim-cell/run/cell/linux directory and type sudo ../run_gui.
+
Go to /opt/ibm/systemsim-cell/ directory and type sudo ./systemsim -g
 
You can run without root by changing the owner and group.
 
You can run without root by changing the owner and group.
 
  sudo chown -R /opt/ibm/systemsim-cell
 
  sudo chown -R /opt/ibm/systemsim-cell
Line 98: Line 41:
  
  
  cd /opt/ibm/systemsim-cell/run/cell/linux
+
  cd /opt/ibm/systemsim-cell/bin/
  ../run_gui
+
  ./systemsim -g
 
+
If it gives you some segmentation fault, that means you've forgotten to install the tcl/tk without pthread versions.
+
 
+
=Problems=
+
===Eclipse===
+
The SDK contains plugins for Eclipse, but unfortunately they do not work for the Eclipse version currently in the Arch Linux repositories, so unless you install an older version of Eclipse, the plugins cannot be used. Instead consider using makefiles! There are some simple examples in the SDK which can be build on.
+
  
 
===Other...===
 
===Other...===
Since the PKGBUILD does not run the official install script there is bound to be something not setup completely correct... Place a comment on the [http://aur.archlinux.org/packages.php?ID=17060 cellsdk AUR page].
+
Since the PKGBUILD does not run the official install script there is bound to be something not setup completely correct... Place a comment on the [https://aur.archlinux.org/packages.php?ID=17060 cellsdk AUR page].

Revision as of 17:12, 26 September 2012


The CBE SDK installation only supports the Fedora 9 or RHEL linux distributions. I managed to install it on my Arch Linux system with the help of a post in the gentoo forum, and doing some trial/error.


Required Packages

All of the following required packages are provided by the pacman databases and the versions should be recent enough.

Core repository:

  • gcc 4.x
  • glibc
  • perl 5.x
  • freeglut
  • gawk
  • bison
  • flex

Extra repository:

  • rpmextract
  • tcl
  • tk

To make sure all of these are installed:

# pacman -S gcc glibc perl freeglut gawk bison flex rpmextract tcl tk


Installation

Get ISOs and build the SDK

You'll have to download the two 3.1 SDK ISOs (Developer, Extra) for Fedora 9 manually from IBM's website, which requires free registration. Place them in a build folder, and get the cellsdk build files from the AUR, and place them in the same folder. Now the SDK is ready to be build, but you will have to do it as root because the PKGBUILD uses mount of loop-devices to extract packages from the ISOs. Build the SDK by running:

sudo makepkg --asroot

Now a cellsdk-3.1-1-x86_64.pkg.tar.gz should be ready for installation! Just run

sudo pacman -A cellsdk-3.1-1-x86_64.pkg.tar.gz

and now the SDK is installed and ready for use.

Running the Simulator

Go to /opt/ibm/systemsim-cell/ directory and type sudo ./systemsim -g You can run without root by changing the owner and group.

sudo chown -R /opt/ibm/systemsim-cell
sudo chgrp -R /opt/ibm/systemsim-cell 


cd /opt/ibm/systemsim-cell/bin/
./systemsim -g

Other...

Since the PKGBUILD does not run the official install script there is bound to be something not setup completely correct... Place a comment on the cellsdk AUR page.