## Tips und Hinweise für Mac OSX & SVN

Anmerkung des Autors: Diese Tips beruhen auf Ratschlägen und Hinweisen, die uns Martin Costabel freundlicherweise überlassen hat. Bei der Betreuung des Fink-Pakets für Scribus hat er schier Unglaubliches geleistet, und ebenso unterstützt er die Benutzer von Fink über die Mailingliste.

### Erstellen einer SVN-Version von Scribus

Installieren Sie die erforderlichen Bibliotheken. Diese dürften am einfachsten zu bekommen sein, indem Sie `fink install scribus` eingeben und abbrechen, sobald alle erforderlichen Komponenten installiert sind und Fink damit beginnt, Scribus zu kompilieren. Eine Liste mit den notwendigen Paketen finden Sie in der Fink-Datei scribus.info unter "Depends" und "BuildDepends". Die aufgeführten Abhängigkeiten werden automatisch aufgelöst und von Fink installiert.

Abhängigkeiten

- x11
- ghostscript
- qt3-shlibs
- libjpeg-shlibs
- libjpeg-bin
- lcms-shlibs (>=1.09)
- libart2-shlibs
- libpng3-shlibs
- libtiff-shlibs
- freetype2-shlibs oder freetype2-hinting-shlibs

Abhängigkeiten beim Selbstkompilieren

- x11-dev
- lcms
- libjpeg
- qt3
- libart2
- cups-dev
- libpng3
- libtiff
- freetype2-dev oder freetype2-hinting-dev

Einrichten der Umgebung:

Wenn Sie tcsh als Shell benutzen:

>     setenv CFLAGS -I/sw/include
>     setenv LDFLAGS -L/sw/lib
>     setenv CXXFLAGS $CFLAGS
>     setenv CPPFLAGS $CXXFLAGS
>     setenv ACLOCAL_FLAGS "-I /sw/share/aclocal"
>     setenv PKG_CONFIG_PATH "/sw/lib/pkgconfig"

Wenn Sie bash als Shell benutzen:

>     export CFLAGS=-I/sw/include
>     export LDFLAGS=-L/sw/lib
>     export CXXFLAGS=$CFLAGS
>     export CPPFLAGS=$CXXFLAGS
>     export ACLOCAL_FLAGS="-I /sw/share/aclocal"
>     export PKG_CONFIG_PATH="/sw/lib/pkgconfig"

Dann kann folgendes eingegeben werden:

>     make -f Makefile.dist

Es ist nicht erforderlich, autoconf und automake unter Fink zu installieren, da diese bereits in MacOSX 10.3 integriert sind. Nun das obligatorische `configure` wie folgt:

>     ./configure --with-qt-dir=/sw --with-qt-includes=/sw/include/qt --with-qt-libraries=/sw/lib
>      --with-extra-includes=/sw/include
>      --with-pythondir=/System/Library/Frameworks/Python.framework/Versions/2.3/

Bevor sich nun `make` eingeben läßt, werden noch die Patches benötigt, welche gemäß "PatchScript" in der Fink-Datei scribus.info ausgeführt werden.

Die erste Gruppe Patches hilft dabei, die richtigen Kopfzeilen- und Bibliotheken-Versionen von FreeType (jene von Fink, denn Apples X11 hat eine veraltete FreeType-Version) sowie die richtige Version von Python (der von MacOSX) zu ermitteln:

>     perl -pi -e 's,usr/X11/bin,usr/X11R6/bin,g' configure
>     perl -pi -e 's,FREETYPE_CONFIG=\"\",FREETYPE_CONFIG=\"/sw/lib/freetype2/bin/freetype-config\",g' configure
>     perl -pi -e 's,LIBS=\"\-lfreetype,LIBS=\"\$LIBFREETYPE_LIBS,g' configure
>     perl -pi -e "s,PYTHONLIB=.*,PYTHONLIB='-framework Python'\npython_libdir=yes\nLIBPYTHON=' ',g" configure
>     perl -pi -e "s,LIBPYTHON =.*,LIBPYTHON=,g" scribus/plugins/scriptplugin/Makefile.in

Die zweite Gruppe Patches ist notwendig, um die Plug-ins zu erstellen. Keine optimale Lösung, es geht vermutlich auch anders.

>     perl -pi -e 's|^AM_LDFLAGS = .*\-s|AM_LDFLAGS = \$(all_libraries) \$(LIB_QT)|g' `find . -name Makefile.in`
>     perl -pi -e 's|(lib.*)\.la|$1.so|g' `find . -name Makefile.in`
>     perl -pi -e 's|-version-info 0:0:0|-bundle -undefined dynamic_lookup -bind_at_load|g' `find . -name Makefile.in`
>     perl -pi -e 's|libpdf_la_LIBADD =|libpdf_la_LIBADD =\$(LIBTIFF)|g' scribus/libpdf/Makefile.in

Dann kann folgendes eingegeben werden:

>     make
>     sudo make install

Dies installiert Scribus nach `/usr/local`, wodurch Konflikte mit einer anderen, von Fink installierten Version vermieden werden, die sich in `/sw` befindet.