ch0wned – Installing TaskCoach and all its depenencies in $HOME for EL4/EL5

Written by max on April 2, 2010

ch0wned. adj. This is the state when you are a linux user and don't have root access.

Installing TaskCoach and its dependencies in $HOME for EL4/EL5

This guide assumes you’re leaving off from my previous post : http://warped.org/blog/2009/03/04/chown3d-part-2-gtk-and-glib-in-your-own-home-directory/ where you’ve setup a script called config_gapp.

Update: 2/1/2011 – Added EL5 . Irony : Spending a half-day trying to install an application that’s going to make you more productive.
Update: 3/12/2012 – Latest Version and $HOME install of python 2.6

Requirements

  • Python-2.6.7.tar.bz2 / python26
  • wxPython-src-2.8.12.1.tar.bz2
  • TaskCoach-1.3.9.tar.gz

Directions

  1. Python

    Install it like normal unless you have a modern distro that has a decent install of Python 2.5, in which case you will need to install the following things into $HOME. Not sure how to do that in Python, so you might as well have your own local version. If you have EL5, you may have the ‘python26’ package installed in which you can use that and can skip this step.

    config_gapp \
       --enable-shared \
       --enable-unicode=ucs4
    make 
    make install
  2. wxWidgets (included w/ wxPython)
    EL4 Only : Install the following patch from This Thread :

    --- wxPython/src/gtk/_gdi_wrap.cpp.orig 2009-08-08 16:26:48.000000000 +0200
    +++ wxPython/src/gtk/_gdi_wrap.cpp      2009-08-08 16:32:50.000000000 +0200
    @@ -4195,6 +4195,10 @@
         virtual wxGraphicsBrush CreateRadialGradientBrush(wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ,
                                                           const wxColour &, const wxColour &)  { return wxNullGraphicsBrush; }
         virtual wxGraphicsFont CreateFont( const wxFont & , const wxColour & ) { return wxNullGraphicsFont; }
    +
    +    // patch required as explained in
    +    // http://groups.google.com/group/wxPython-users/browse_thread/thread/129ba27e2f868c3c?pli=1
    +    wxGraphicsBitmap CreateBitmap( const wxBitmap &bitmap ) const { return wxNullGraphicsBitmap; } 
     };

    For EL4 run :

    config_gapp --enable-unicode
    make install
    cd contrib/src/gizmos

    For EL5 using installed python26 run :

    config_gapp --enable-unicode --enable-compat24 --enable-compat26
    make install
    cd contrib/src/gizmos && make install

    If you later get errors about “the library and executable don’t match”, you may need to tweak the –enable-compat* flags above till it works.

  3. wxPython
    cd wxPython
    vim config.py
      BUILD_GLCANVAS = 0 # If true, build the contrib/glcanvas extension module
      BUILD_OGL = 0      # If true, build the contrib/ogl extension module
      BUILD_STC = 0      # If true, build the contrib/stc extension module
      BUILD_GIZMOS = 1   # Build a module for the gizmos contrib library
    # EL4 w/ self-installed python25
    run_gapp python2.5 setup.py build_ext
    run_gapp python2.5 setup.py install  --home=$HOME
    # EL5 w/ system installed python26
    # python26 setup.py build_ext
    # python26 setup.py install --home=$HOME
    # EL5 w/ self-installed python26
    run_gapp python2.6 setup.py build_ext
    run_gapp python2.6 setup.py install  --home=$HOME
  4. TaskCoach Install
    # EL4  w/ self-install python:
    #run_gapp python2.5 setup.py build
    #run_gapp python2.5 setup.py install
     
    # For system installed python26 I needed to specify the above installed libraries in my $PYTHONPATH :
    export PYTHONPATH=$LIB/lib64/python:$HOME/lib64/python/wx-2.8-gtk2-unicode/wxPython:$HOME/lib64/python/wx-2.8-gtk2-unicode/wx:$HOME/python/wx-2.8-gtk2-unicode
     
    # EL5  w/ self-install python:
    run_gapp python2.6 setup.py build
    run_gapp python2.6 setup.py install --home=$HOME
     
    # EL5 w/ system python26
    #python26 setup.py build
    #python26 setup.py install --home=$HOME
  5. TaskCoach Wrapper Script
    # EL4 / EL5 w/ self-install python2.5
    run_gapp $HOME/bin/taskcoach.py
     
    # EL5 w/ system python26
    export PYTHONPATH=$HOME/lib64/python:$HOME/lib/python
    python26 $HOME/bin/taskcoach.py
     
    # EL5 w/ self python
    export PYTHONPATH=$HOME/lib64/python:$HOME/lib/python
    python2.6 $HOME/bin/taskcoach.py
Share and Enjoy!

Posted Under: Linux, Technology

Leave a Reply

Your email address will not be published.