RHEL 4 Workstation Build

Building on Redhat Entrprise Linux 4 appears to be very straight forward; this assumed that your RHEL4 installation has the standard development tools installed i.e. gcc, pkgconfig, etc.

This has only been tested on RHEL 4 Server. This document is a work in progress feel free to help out!

openlibraries

dependencies

  • for most of the includes needed you should use the dag repository to get the dependencies
    • see http://dag.linux.iastate.edu
    • follow the instructions under Configuring up2date To Use This Repository and dont forget to Install Dag's GPG Key
  • main dependencies
    • boost: probably installed already, install with up2date -i boost-devel
    • SDL: probably installed already, install with up2date -i SDL-devel
    • python: probably installed already, install with up2date -i python (note, uses python 2.4)
  • optional dependencies (we advise you fill them all)
    • ffmpeg (see below)
    • GLEW: install with up2date -i glew-devel
    • OpenAL: install with up2date -i openal-devel
    • GLUT: install with sudo up2date -i freeglut-devel
    • openEXR: install with sudo up2date -i openexr-devel

FFMPEG

  • ffmpeg
    • get the latest ffmpeg from svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
    • if you want full media supprt you need to get the dependencies
      • lame, faac, faad2 can be retrieved from dag:
        • sudo up2date -i faac-devel.i386
        • sudo up2date -i faad2-devel.i386
        • sudo up2date -i lame-devel.i386
      • amr
        • you can get the amrnb dev package with
          • sudo up2date -i amrnb-dedvel
        • to get both requires manual build and install:
          • get tarballs for both nb and wb from here: http://www.penguin.cz/~utx/amr
          • unzip, untar, for both (current versions 7.0.0) no problems building
          • for both do: ./configure, make, sudo make install
    • configure with:
      • ./configure --enable-shared --disable-static --disable-vhook --enable-libamr-nb --enable-libamr-wb --enable-libmp3lame --enable-libfaad
      • note that for FAAD2 support you rneed to add --enable-gpl and for libamr you need to add --enable-nonfree
  • i was unable to compile with faac/faad support, even though it was intalled ffmepg couldnt locate it and so I had to disable it
  • make, sudo make install

compiling openlibraries

  • configure openlibraries
    • ./bootstrap
    • configure:
      • export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
      • ./configure --enable-gpl --with-pythonversion=2.4
    • make, sudo make install

SE Linux

  • This is currently untested
    • if you have SELinux enabled, then you will need to modify the openlibraries .so to allow text relocation. This can be done as follows:
      • sudo find /usr/local/lib/ -name '*.so*' -exec chcon -t texrel_shlib_t {} \;
    • i got context errors so i did this
      • sudo find /usr/local/lib/ -name '*.so*' -exec chcon -R -h root:object_r:texrel_shlib_t {} \;
      • chcon -h system_u:object_r:texrel_shlib_t /usr/local/lib

developer debug notes

when building openlibraries I kept getting a boost error in openpluginlib when using the mt option to build openlibraries --with-boostthreadruntime=mt and so ommited it from the configure statement above. this is the error

/usr/bin/ld: cannot find -lboost_thread-mt

python notes

you will need to set your PYTHONPATH properly you need to add /usr/local/lib/python2.4/site-packages to PYTHONPATH

also for some reason openobjectlib didnt build the py version and so diditn copy into site packages