The University of Queensland Homepage
UQ VisLab UQ VisLab

 Build Instructions for Python-SRB Bindings
Linux Instructions
  • Prerequisite:
    • Python 2.3 or later

  1. Download and extract the SRB 3.4.2 Client distribution from the SDSC page here
  2. Download and extract the Python-SRB source code here or svn check out from here (coming soon!).
  3. Go to the python-srb directory:

    • run: ./configure --with-SRB-client=<the SRB 3.4.2 client directory> --with-Python-inc=<your Python include directory>
    • run: make

  • The built Python-SRB bindings srb.so file will be in the "python-srb/lib" directory.
  • To clean, run make clean
  • To use, in the directory where the bindings are start a Python session then run import srb. Alternatively set PYTHONPATH to the location of the bindings (see here: Python Tutorial, thanks Rick and Adil from SDSC-Chat).
  • To test, please see api_reference.txt in the src package for the list of included functions (e.g. srb.connect, srb.obj_open, srb.issue_ticket). Or read the quick test guide here (NEW!).

OS X (PowerPC/Intel) Instructions
  • Prerequisites:
    • Python 2.3 (included in OS X)
    • Xcode (freely available from Apple, link)

  1. Download and extract the SRB 3.4.2 Client distribution from the SDSC page here.
  2. Download and extract the Python-SRB source code here or svn check out from here (coming soon!).
  3. Go to the python-srb directory:

    • run: ./configure --with-SRB-client=<the SRB 3.4.2 client directory> --with-Python-inc=<your Python include directory>
    • run: make

  • The built Python-SRB bindings srb.dynlib file will be in the "python-srb/lib" directory.
  • To clean, run make clean
  • You will need to rename srb.dynlib -> srb.so for use in Python.
  • To use, in the directory where the bindings are start a Python session then run import srb. Alternatively set PYTHONPATH to the location of the bindings (see here: Python Tutorial, thanks Rick and Adil from SDSC-Chat).
  • To test, please see api_reference.txt in the src package for the list of included functions (e.g. srb.connect, srb.obj_open, srb.issue_ticket). Or read the quick test guide here (NEW!).

Windows Instructions
  • Prerequisites:
    • Python 2.3 (required for AG3 Tk)
    • Visual Studio 2005 Express Edition (freely available from Microsoft, link)

  1. Download and extract the SRB 3.4.2 Client distribution from the SDSC page here.
  2. Download and extract the Python-SRB source code here or svn check out from here (coming soon!).
  3. Open a 'Visual Studio 2005 Command Prompt' and navigate to 'python-srb\NT' directory:

    • run: set PATH=%PATH%;<your Python path (e.g. C:\Python23\)>
    • run: build_srb_client.bat <the SRB 3.4.2 client directory>
    • run: python setup-win32.py build

  • The built Python-SRB bindings srb.pyd file will be in the "python-srb\NT\build\lib.win32-2.3" directory.
  • To clean, run: clean_srb_client.bat
  • To use, in the directory where the bindings are start a Python session then run import srb. Alternatively set PYTHONPATH to the location of the bindings (see here: Python Tutorial, thanks Rick and Adil from SDSC-Chat).
  • To test, please see api_reference.txt in the src package for the list of included functions (e.g. srb.connect, srb.obj_open, srb.issue_ticket). Or read the quick test guide here (NEW!).
NOTES:
  • Currently there is no parallel-IO capabilities for the Windows build.
  • When building with Visual Studio 2005 Express Edition, variable name collision may occur between regex.c and crtdefs.h.
    You will need to replace <SRB 3.4.2 client directory>\nt_util\regex.c with the patched version from MapServer:
    http://trac.osgeo.org/mapserver/attachment/ticket/1651/regex.c
    Or get from here: regex.c (local mirror)
  • If you get the following error when building with Python 2.3 installed:
              "error: Python was built with version 6 of Visual Studio, and extensions need to
               be built with the same version of the compiler, but it isn't installed."
    see: http://mail.python.org/pipermail/patches/2004-May/014808.html


===================================================
Clarification from SDSC Regarding Use of Visual Studio Makefiles from the
SRB full release to build the SRB client library.
===================================================
Hi Wayne,

Thanks for the quick clarification. This open support for developers is
much appreciated.  :)

Eric


Wayne Schroeder wrote:
> > Eric,
> >
> > Reagan has clarified this, explaining that all the SRB clients can be
> > freely distributed.  So you should be able to use the the
> > NT/scommands/Makefile without restrictions.  It's the NT Server
> > components that have limited access.
> >
> >  - Wayne -
> >
> > 
> >    Date: Thu, 21 Jun 2007 15:15:53 -0700
> >    From: Wayne Schroeder <schroede@zuri.sdsc.edu>
> >    Cc: srb-chat@sdsc.edu
> >    Sender: srb-chat-bounces@sdsc.edu
> >
> >    Eric,
> >
> >    Much of the content of the NT subtree is still, unfortunately, under
> >    the more restricted license, which is why it's not included in the
> >    unencrypted client-only release.
> >
> >    Since you have access to the full release, you can certainly use the
> >    Makefiles to build the client libraries.
> >
> >    I'm not sure if NT client code is less restricted.  The current
> >    agreement with GA may only allow us to freely release Unix client
> >    code, but I am not sure.  If it is only the NT/scommands/Makefile that
> >    you need, we can check into it and get back to you.
> >
> >     - Wayne -
> >
> >
> >       Date: Thu, 21 Jun 2007 16:54:58 +1000
> >       From: Eric Liao <e.liao@uq.edu.au>
> >       X-UQ-FilterTime: 1182408898
> >       X-Scanned-By: MIMEDefang 2.51 on UQ Mailhub on 130.102.149.128
> >       Sender: srb-chat-bounces@sdsc.edu
> >
> >       Hi all,
> >
> >       I have written a wxPython-based GUI to manage SRB data with modified
> >       Python bindings for use within the Access Grid (details here:
> >       http://www.vislab.uq.edu.au/research/accessgrid/virtual_fs/index.htm).
> >
> >       I've managed to compile the SRB Client libraries using Visual Studio
> >       .NET with the provided "build_srb.bat"  and the relevant Makefiles in
> >       "$SRB_SOURCE_TREE\NT" but I noticed that this particular directory is
> >       not in the unencrypted SRB Client source distribution
> >       (http://www.sdsc.edu/srb/tarfiles/SRB3_4_2client.tar).
> >
> >       Thus are the contents of the "$SRB_SOURCE_TREE\NT" directory covered by
> >       the more restrictive SRB Server license? And am I allowed to use the
> >       Makefiles to compile the SRB Client libraries from the freely-available
> >       SRB Client source?
> >
> >
> >       Thanks in advance,
> >
> >       Eric Liao
> >       UQ Vislab, Australia
> >       ================================================
> >       SRB-Chat subscription options and  search-able archives are at
> >       https://lists.sdsc.edu/mailman/listinfo.cgi/srb-chat
> >
> >       Have you subscribed to irod-chat: http://www.irods.org
> >
> >    =================================================
> >    SRB-Chat subscription options and  search-able archives are at
> >    https://lists.sdsc.edu/mailman/listinfo.cgi/srb-chat
> >
> >    Have you subscribed to irod-chat: http://www.irods.org
> >
> >
> >

=====================================================
SRB-Chat subscription options and  search-able archives are at
https://lists.sdsc.edu/mailman/listinfo.cgi/srb-chat

Have you subscribed to irod-chat: http://www.irods.org


- Last updated July 31, 2007 -