Forum Wiki Galerie Kontakt Wie man Fragen richtig stellt. Tutorial Forum
Zurück   GIMP-Forum 3.0 > Probleme > Archiv > Technische Fragen

Hinweise
Alt 18.01.2011, 20:17   #1
Agrajag
Erfahrener Benutzer
 
Benutzerbild von Agrajag
 
Registriert seit: 15.07.2004
Beiträge: 1.094
Standard Git-GIMP auf (Linux-)System mit nicht brandaktuellen Abhängigkeiten

Dieser Thread folgt einem Diskussionsanfang hier: http://www.gimpforum.de/showthread.php?t=18177&page=5

Es geht darum, GIMP aus dem Git zu bauen, auf einem System, das nicht von sich aus die aktuellen Abhängigkeits-Anforderungen erfüllt, ohne dabei die vorhandenen System-Pakete zu berühren.

Was bereits erfolgt ist:
Aus Git wurden die folgenden Programme bezogen:

* BABL
* GEGL
* GIMP
und versuchsweise auch:
* GLlib
* GTK+

Angestrebt ist eine parallele Installation des "Entwicklungs-GIMP" in /opt/dev. Das System ist Slackware Linux 13.1.

Szenario 1: Bau der GLib und GTK+ aus dem Git als Grundlage für GIMP

Glib läßt sich ohne weiteres kompilieren. GTK+ wird danach wie folgt konfiguriert:
Code:
PKG_CONFIG_PATH="/opt/dev/lib/pkgconfig:/usr/lib/pkgconfig" LD_LIBRARY_PATH="/opt/dev/lib:/usr/lib" ./configure --prefix=/opt/dev
Das Konfigurationsskript bricht mit folgendem Fehler ab (Auszug):
Zitat:
Zitat von GTK+
checking for BASE_DEPENDENCIES... configure: error: Package requirements (glib-2.0 >= 2.27.5 atk >= 1.29.2 pango >= 1.20 cairo >= 1.10.0 cairo-gobject >= 1.10.0 gdk-pixbuf-2.0 >= 2.21.0) were not met:

Requested 'glib-2.0 >= 2.27.5' but version of GLib is 2.22.5
Requested 'cairo >= 1.10.0' but version of cairo is 1.8.8
No package 'cairo-gobject' found
Requested 'gdk-pixbuf-2.0 >= 2.21.0' but version of GdkPixbuf is 2.18.9

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables BASE_DEPENDENCIES_CFLAGS
and BASE_DEPENDENCIES_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Ob ich nun die BASE_DEPENDENCIES_* setze, scheint im Ergebnis keine Rolle zu spielen. Das sollte ja auch schon per PKG_CONFIG_PATH geregelt sein (?). So versucht:
Code:
BASE_DEPENDENCIES_LIBS="-L/opt/dev/lib -lglib-2.0" BASE_DEPENDENCIES_CFLAGS="-I/opt/dev/include/glib-2.0/"
Ich bin mir sicher, daß diese Abhängigkeiten ihrerseits weitere Abhängigkeiten mit sich bringen, daher wähne ich mich bereits im Vorhof der Dependency Hell und suche nach Auswegen. Einer davon ist...

Szenario 2: Bau von GLib und GTK+ nach *_required_version in Git-GIMPs configure.ac

In der Hoffnung, mein System bietet genügend Aktualität für die Mindestanforderung der Abhängigkeitsversionen (gewählt: Glib 2.24.2, GTK+ 2.20.1), fange ich wieder an mit Glib, was auch wieder problemlos funktioniert.

GTK+ moniert diesmal nichts beim Durchlauf von ./configure.
Code:
PKG_CONFIG_PATH="/opt/dev/lib/pkgconfig:/usr/lib/pkgconfig" LD_LIBRARY_PATH="/opt/dev/lib:/usr/lib" BASE_DEPENDENCIES_LIBS="-L/opt/dev/lib -lglib-2.0" BASE_DEPENDENCIES_CFLAGS="-I/opt/dev/include/glib-2.0/" ./configure --prefix=/opt/dev
Es bricht jedoch während der "make"-Phase ab, mit folgendem Fehler:
Zitat:
Zitat von GTK+
libtool: link: gcc -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -g -O2 -Wall -o .libs/gtk-query-immodules-2.0 queryimmodules.o -pthread ./.libs/libgtk-x11-2.0.so -L/opt/dev/lib /home/user/src/gtk+-2.20.1/gdk/.libs/libgdk-x11-2.0.so ../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so ../gdk/.libs/libgdk-x11-2.0.so /usr/lib/libXinerama.so /usr/lib/libXrandr.so /usr/lib/libXcursor.so /home/user/src/gtk+-2.20.1/gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so /usr/lib/libpangocairo-1.0.so /usr/lib/libstdc++.so /usr/lib/libXcomposite.so /usr/lib/libXext.so /usr/lib/libXdamage.so /usr/lib/libXfixes.so /usr/lib/libatk-1.0.so /usr/lib/libcairo.so /usr/lib/libpixman-1.so /usr/lib/libpng14.so /usr/lib/libXrender.so /usr/lib/libX11.so /usr/lib/libxcb.so /usr/lib/libXau.so /usr/lib/libXdmcp.so /opt/dev/lib/libgio-2.0.so -lresolv /usr/lib/libpangoft2-1.0.so /usr/lib/libpango-1.0.so /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so /usr/lib/libglib-2.0.so /usr/lib/libfontconfig.so /usr/lib/libfreetype.so -lz /usr/lib/libexpat.so /opt/dev/lib/libgobject-2.0.so /opt/dev/lib/libgmodule-2.0.so -ldl /opt/dev/lib/libgthread-2.0.so -lpthread -lrt /opt/dev/lib/libglib-2.0.so -lm -pthread -Wl,-rpath -Wl,/opt/dev/lib
./.libs/libgtk-x11-2.0.so: undefined reference to `g_malloc_n'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_realloc_n'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_malloc0_n'

collect2: ld returned 1 exit status
make[4]: *** [gtk-query-immodules-2.0] Fehler 1
make[4]: Leaving directory `/home/user/src/gtk+-2.20.1/gtk'
make[3]: *** [all-recursive] Fehler 1
make[3]: Leaving directory `/home/user/src/gtk+-2.20.1/gtk'
make[2]: *** [all] Fehler 2
make[2]: Leaving directory `/home/user/src/gtk+-2.20.1/gtk'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/user/src/gtk+-2.20.1'
make: *** [all] Fehler 2
Meine Vermutung geht dahin, daß trotz Angabe der o. g. Umgebungsvariablen nicht die Glib aus /opt/dev, sondern die System-GLib herangezogen wird, in der scheinbar die fett markierten Funktionen noch nicht vorhanden sind. Eine Lösung habe ich bisher nicht, und die Ergebnisse der einschlägigen Suchmaschinen haben bisher für mehr Verwirrung als Erkenntnis gesorgt.

Vielleicht kann mir ja jemand die Augen öffnen. Würde gern mal wieder ein aktuelles GIMP ausprobieren.
Wenn weitere Infos benötigt werden, einfach fragen.

Danke schonmal!

Geändert von Agrajag (18.01.2011 um 20:38 Uhr) Grund: Ergänzung: lib-Versionen
Agrajag ist offline  
Alt 18.01.2011, 20:24   #2
schumaml
Erfahrener Benutzer
 
Benutzerbild von schumaml
 
Registriert seit: 21.01.2004
Ort: Leinfelden
Beiträge: 5.837
Standard

Zitat:
Zitat von Agrajag Beitrag anzeigen
Meine Vermutung geht dahin, daß trotz Angabe der o. g. Umgebungsvariablen nicht die Glib aus /opt/dev, sondern die System-GLib herangezogen wird
Recht leicht lässt sich ja prüfen, welche .pc-Dateien pkg-config findet:

PKG_CONFIG_PATH="/opt/dev/lib/pkgconfig:/usr/lib/pkgconfig" pkg-config --modversion glib-2.0

So lange dort nicht die richtige Version zu sehen ist, müssen wir uns um anderes noch nicht kümmern.
__________________
Komm in den Chat! irc://irc.freenode.net/#gimp-de
Verwendete GIMP-Versionen: gimp-2-8, 2.8.4, Git master
Technische Lösungen gegen Spammer - für Privatpersonen, Arbeitsgruppen und Unternehmen
schumaml ist offline  
Alt 18.01.2011, 20:40   #3
Agrajag
Erfahrener Benutzer
 
Benutzerbild von Agrajag
 
Registriert seit: 15.07.2004
Beiträge: 1.094
Standard

Zitat:
Zitat von bash
PKG_CONFIG_PATH="/opt/dev/lib/pkgconfig:/usr/lib/pkgconfig" pkg-config --modversion glib-2.0
2.24.2
Das scheint schonmal zu funktionieren.

Ich habe oben auch die ausgewählten Versionen von Glib (2.24.2) und GTK (2.20.1) ergänzt.
Agrajag ist offline  
 

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Das erste Gimp Data extra Package für Linux.. eRin GIMP-Ressourcen 13 19.06.2004 13:10


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:20 Uhr.


Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.