DarPython

What this page is about

This page will track the status of the attempt to make a package dar-python which has python bindings for dar. This is based on the work on http://darbindings.souceforge.net. You will find instructions to build the bindings so that they are usable.

Status

UPDATE 2: I fixed everything and you can download nice packages from http://hubackup.um-gottes-willen.net/

By now, one can compile the modules from scratch with ./configure, make. It is currently not possible to do it with --enable-mode=64 which is what the default of the debian package is.

UPDATE: it is possible, but I need to fix the Makefile.*s, you can get experimental packages at http://hubackup.um-gottes-willen.net/

Instructions

  1. Download the dar source and all depends

     apt-get build-dep dar
    apt-get source dar 
  2. Download everything else you need

     apt-get install python-dev swig autoconf automake1.9
  3. go to source directory

     cd dar-2.3.0
  4. get the patch from here

  5. apply the patch

     patch -p0 < /path/to/dar-python-*.patch
    (Ignore the fail, it doesn't matter)
  6. Prepare everything so that you compile it

    aclocal -I m4
    autoconf
  7. configure it

     ./configure --with-python
  8. compile it

     make
    • 8.1 If it fails, just do

       make

      NOTE: Instructions on how to fix that below

  9. install everything where you want it to be
    • 9.1 for a quick test, you can copy the libdar/.libs/libdar.so.4 to /usr/lib/ and go to libdar/bindings/swig/python and run python -c 'from dar import archive' if everything is ok, you'll see

       DEBUG: Loading python bindings

Fixes

To fix the build error, you need to insert

 %import "user_interaction_bind.hpp"

just before the {{{ class libdar::int_pycb { ... }}}} in the file src/bindings/swig/libdar.i.

TODO (OBSOLETE)

Currently, when running debuild in the directory, the modules will have unresolved symbols. This is because of the compile option --enable-mode=64. There are also problems with the compile flags of swing, so there is still something to do. Manually adding them (-DLIBDAR_MODE=64) to Makefile.am causes the build to faile with swig failing to create infinit_wrap.cpp.

HomeUserBackup/DarPython (last edited 2008-08-06 16:59:37 by localhost)