Changes

From Gramps

Mac OS X:Application package

1,801 bytes added, 04:15, 13 June 2011
Building GRAMPS from Scratch: Building PyExiv2
If you want to build the svn trunk, you can substitute "gramps-svn" for "gramps". If you want to have both installed, you'll need to set up separate prefixes in .jhbuildrc-custom; gramps doesn't version its installations, so the most recent will overwrite the previous build.
 
==== Gramps 3.3 and EXIF Editing ====
 
Gramps 3.3.0 introduced a new module, EXIF Editing, which has two tricky dependencies, which JHBuild doesn't know how to handle yet. In order to evade the persnickityness of jhbuild's dependencies, they're given as "soft" dependencies -- you have to add them to your modules list. If you don't, Gramps will still build fine, you'll just get a warning notice about Exiv2 not being installed.
 
The first is [Boost-python http://www.boost.org/libs/python/doc/], a python interface for C++ provided as part of [Boost http://www.boost.org/]. It uses its own build system, bjam. Since jhbuild doesn't know how to use bjam, it will download the package for you, then error out. Select item 4, "start a shell", and do the following:
cd tools/build/v2
./bootstrap.sh toolset=darwin address-model=32 --prefix=$PREFIX --with-python --cmd-or-prefix=$PYTHON cxxflags="$CXXFLAGS" cflags="$CFLAGS" linkflags="$LDFLAGS"
./bjam install
 
Once that's done, quit the shell and select "2" (ignore error) several times to move on to the next library, [PyExiv2 http://tilloy.net/dev/pyexiv2/], which also uses a different build system, [SCons http://www.scons.org/]. The SCons folks are bright enough to use distutils, which JHBuild ''can'' handle, so that gets built and installed for you. JHBuild will stop again after downloading and extracting PyExiv for you, so once again select "4" to start a shell and run the following:
export CXXFLAGS="$CXXFLAGS -I$PREFIX/include"
export CFLAGS="$CFLAGS -I$PREFIX/include"
export LDFLAGS="$LDFLAGS -lpython2.6"
scons
scons install
mv $PREFIX/lib/python2.6/site-packages/libexiv2python.dylib $PREFIX/lib/python2.6/site-packages/libexiv2python.so
 
Quit the shell and pick "2" a few more times to move on to the next module.
== Bundling ==

Navigation menu