Wikis > jahshaka coding > building on linux

Jahshaka V3

The structure of the tree is as follows:

|-- jahplayer
|-- jahtools
|   `-- jplayer
|-- jahwidgets
|   |-- src
|   |   `-- qt3
|   |       |-- python
|   |       |-- themes
|   |       |   `-- superg
|   |       |       |-- pixmaps
|   |       |       `-- style
|   |       |-- widgets
|   |       `-- wrapper
|   `-- test
`-- jahshaka (TBD)

Directory Overview

  • The jahplayer and jahtools directories contain python only.
  • The jahwidgets directory provides a custom python module and designer plugin per qt version wrapped
    • currently only qt3 is supported

Dependencies

The only dependencies jahshaka has are openlibraries, OpenGL, Qt and Python.

Configuring

The main part of the app that needs to be built is all the widgets and the python binders. The rest of the app runs using python in real time so no building is required. You will need to edit the following file and make sure the path points to the currect version of pythin (ie 2.4 or 2.5)

/jahshaka/jahwidgets/src/qt3/python/python.pro

look for the following code and set the path for python correctly

unix:!mac {
    INCLUDEPATH += /usr/include/python2.5
    LIBS                += -lboost_python
}

also you need to edit setenv

export LD_LIBRARY_PATH=`pwd`/jahwidgets/src/qt3/python:`pwd`/jahwidgets/src/qt3/wrapper:$LD_LIBRARY_PATH
export PYTHONPATH=`pwd`/jahwidgets/src/qt3/python:`pwd`/jahtools/jbatch:`pwd`/jahtools/jplayer:`pwd`/jahplayer:/usr/local/lib/python2.5/site-packages:$PYTHONPATH
export PATH=`pwd`/jahtools/jbatch:`pwd`/jahtools/jcapture:`pwd`/jahtools/jplayer:`pwd`/jahplayer:$PATH

if you are not sure what version of python you have insrtalled see whats in /usr/include/python2.x

Building

To build the jahwidgets library:

  • source setenv; source setenv_new
  • cd jahwidgets
    • make

for the jahplayer skin, you need to copy the theme over to Qt

  • cd jahwidgets/src/qt3/themes
  • sudo cp libthemes.so /usr/lib/qt-3.3/plugins/styles/

Running

To run all the applications without installation:

  • set up environment if not already done
    • source setenv; source setenv_new
  • jahplayer
    • cd jahplayer; ./jahplayer.py
  • jahtools
    • jplayer (opengl based)
      • cd jahtools/jplayer; ./jplayer.py
    • jbatch (command line, SDL based)
      • cd jahtools/jbatch; ./jbatch