AccessGrid.org

AG Development Environment for Fedora, Red Hat Enterprise Linux, CentOS and Scientific Linux

The following guide provides step by step instructions for setting up a development environment on Fedora, Red Hat Enterprise Linux, CentOS and Scientific Linux.

This guide will assumes that the system has a working installation of Linux installed.  Instructions for installation and other AG documents can be found at http://www.accessgrid.org/documentation.  Ensure the AG software is already installed, as this is the easiest way to have all the required dependencies available.

To ensure the development tools are installed, you may need to ensure the additional packages are installed. Within the Linux Menu, select System -> Administration -> Add/Remove Software

  • Click on “Package collections”
  • Ensure the following packages are installed:
    • Development Tools
    • Development Libraries
    • Fedora Eclipse (if wanting to use this open source IDE)
    • X Software Development

If these packages are not selected, select them and hit apply. This should install the desired package.

 

Access Grid Toolkit (AGTK)

The following instructions are for setting up a development environment for the Access Grid ToolKit.  This includes the Venue Client, Venue Server, Unicast Bridge, Bridge Registry and other related software.  What the toolkit doesn't include is the media tools, vic and rat.  A separate section for setting up a development environment for these tools can be found below.

Setting up the Environment:

Within the home directory ($HOME) issue the command:

svn co https://svn.ci.uchicago.edu/svn/accessgrid/trunk AccessGrid   

This will download all the current development files for the Access Grid ToolKit.

To ensure the development packages are used when testing the development packages, you have to add the following line to the .bashrc file:

export PYTHONPATH=$HOME/AccessGrid 
export AGTK_LOCATION=
$HOME/AccessGrid

To setup the checkout-out code to actually run, issue the following command:

cd $HOME/AccessGrid/ 
python tools/bootstrap.py -a $HOME/AccessGrid/

Executing the Development Code

Once all this has been completed, you should be able to launch the development AG software by issuing the example commands (from the $HOME/AccessGrid/ directory):

python bin/VenueClient.py
python bin/VenueServer.py

Access Grid Media Tools (Vic and Rat)

The following instructions are for setting up a development environment for the Access Grid Media Tools "vic" and "rat".  Additional information on the media tools can be found at http://mediatools.cs.ucl.ac.uk/nets/mmedia/wiki/SvnDev.

Prerequisites 

You may need to install the following packages to build the "rat" and "vic" packages.  

yum install tk-devel
yum install tcl-devel
yum install yasm

Downloading source code

Within the home directory ($HOME) issue the following commands for the desired software package: 

RAT

svn co https://mediatools.cs.ucl.ac.uk/repos/mmedia/rat/trunk rat 

VIC

svn co https://mediatools.cs.ucl.ac.uk/repos/mmedia/vic/branches/mpeg4 vic  

Common library (required to build both vic and rat)

svn co https://mediatools.cs.ucl.ac.uk/repos/mmedia/common/trunk common  

Building packages

Note: it is most likely that [base install directory] is $HOME

Common library

Change into common directory, then issue the configure and make commands.

cd /[base install directory]/common 
./configure
make

RAT

Note: The Common Library must be built before building RAT.  To build RAT, Simply change into rat directory, then issue the configure and make commands.

cd /[base install directory]/rat 
./configure
make

VIC

Note: The Common Library must be built before building VIC.  The following instructions are required to build the newer versions of vic – which include updates to the x264 code.

 To build vic with the blackmagic driver support, you will need to download and unzip the SDK package.  This can be done by the following: 

  • Download the SDK from www.blackmagic-design.com
    • click on support
    • click on "Download SDK
    • select "DeckLink SDK [Versioon] - Currently 9.0
    • Fill in required information and select the "I have read and agree ti the terms of the License Agreement" checkbox.
    • Click on "Register & Download" button
    • Once downloaded, copy DeckLink_SDK_[version] file to /[base install directory]/vic and unzip
cp DeckLink_SDK_[version] /[base install directory]/vic
cd  /[base install directory]/vic
unzip DeckLink_SDK_[version] 

and example of this might look like:

cp  DeckLink_SDK_9.0.zip $HOME/vic
cd  $HOME/vic

unzip DeckLink_SDK_9.0.zip

Once the SDK has been unzipped, you will be able to configure and make "build" the vic executable.


cd /[base install directory]/vic

./configure --enable-gpl

make

Additional Development Information

Additional information for Access Grid developers can be found at http://www.accessgrid.org/developer.  Information such as developer mailing lists, reference documentation and developer tutorials can be found.

Developer Mailing List

For those who have any development questions, or would like some advice, it is recommended to subscribe to the AG developer mailing list.  Once subscribed, you can ask many AG developers questions in regards to Access Grid software itself, or in shared applications or node services.

ag-dev@mcs.anl.gov Subscribe/Unsubscribe Archive

Development Tools

Eclipse

Eclipse is a open source IDE application that is great for viewing and editing code. Information on eclipse can be found at http://www.eclipse.org/.

Document Remarks

If you have any questions, feedback or additional hints and tips we would like to hear from you. You can reach me at j.bell@cqu.edu.au.  

A special thanks should also go to:

Douglas Kosovic (UQ) for his huge efforts in supplying the Fedora, Red Hat Enterprise Linux, CentOS and Scientific Linux AG packages, extensive bug testing and editorial assistance.

Revision History

Date

Revised by

Changes

31st / August / 2010 Jason Bell Created Document
14th / January / 2011 Jason Bell Updated document to include Fedora 14
4th / January / 2012 Jason Bell Updated document to include Red Hat Enterprise Linux, CentOS and Scientific Linux
4th / January / 2012 Jason Bell Added Media tools and additional information
5th / January / 2012 Jason Bell Developement and updates to the "vic" section.  Currently testing and further work is required.
23rd / January / 2012 Jason Bell Update document to contain Black Magic build information