Difference between revisions of "Installing Cell Broadband Engine SDK"

From ArchWiki
Jump to: navigation, search
Line 83: Line 83:
 
=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.
+
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:
  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.0-1-x86_64.pkg.tar.gz should be ready for installation! Just run
  pacman -A cellsdk-3.0-1-x86_64.pkg.tar.gz
+
  sudo pacman -A cellsdk-3.0-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/run/cell/linux directory and type sudo ../run_gui.
 
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 101: Line 101:
  
 
If it gives you some segmentation fault, that means you've forgotten to install the tcl/tk without pthread versions.
 
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 archlinux 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...===
 +
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].

Revision as of 16:04, 20 May 2008


The CBE SDK installation only supports the Fedora 7 or RHEL linux distributions. I managed to install it on my archlinux 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 2.4
  • perl 5.x
  • freeglut
  • gawk
  • bison
  • flex

Extra repository:

  • rpmextract

To make sure all of these are installed:

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


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

Get ISOs and build the SDK

You'll have to download the two 3.0 SDK ISOs for Fedora 7 manually from 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:

sudo makepkg --asroot

Now a cellsdk-3.0-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

and now the SDK is installed and ready for use.

Running the Simulator

Go to /opt/ibm/systemsim-cell/run/cell/linux directory and type sudo ../run_gui. 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/run/cell/linux
../run_gui

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 archlinux 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...

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.