Um eine aktuelle Version (derzeit 2.6.9) des Grafikbearbeitungsprogramms GIMP (GNU Image Manipulation Program) unter Windows selbst zu kompilieren, benötigt man eine ganze Reihe an Software sowie diverse Software-Bibliotheken. Im Gegensatz zu Linux bringt Windows hier von Haus aus leider recht wenig selbst mit.
1. MinGW
MinGW (Minimalist GNU for Windows) ist die Umgebung, in der wir GIMP kompilieren werden. Die aktuelle Version (derzeit 5.1.6) kann von Sourceforge heruntergeladen werden: Download
Bei der Installation von MinGW benötigen wir die MinGW base tools, MinGW Make und den g++ compiler.Man kann natürlich auch einfach alle Komponenten installieren, um für andere Projekte mit z.B. Java schon jetzt gerüstet zu sein. Am besten auch das Standardverzeichnis C:\MinGW beibehalten, da die nachfolgenden Beschreibungen und Skripte dies voraussetzen und ansonsten angepasst werden müssten.
2. MSYS
MSYS (Minimal System) ist eine Reihe von GNU Programmen, die zum Kompilieren benötigt werden, wie z.B. bash, make, grep, etc. – und wird jetzt als nächstes in der Version 1.0.11 heruntergeladen und in sein Standardverzeichnis C:\msys\1.0 installiert: Download
Nach der Installation erscheint ein Konsolenfenster, dessen Fragen wie folgt beantwortet werden:
- Do you wish to continue with the post install? -> y
- Do you have MinGW installed? -> y
- Where is your MinGW installation? -> c:/mingw (Achtung, hier nicht den Backslash „\“ verwenden!)
Alle neueren Versionen von MSYS sind noch nicht als Paket verfügbar und daher deutlich umständlicher zu installieren. Version 1.0.11 reicht für unsere Zwecke aber vollkommen aus.
3. Perl
Weiterhin benötigen wir noch Perl, z.B. von ActivePerl von ActiveState: Download
Hier bitte das zur Systemarchitektur passende Paket auswählen (32bit, x86 oder 64bit, x64), ansonsten kann jede Version gewählt werden (z.B. aktuelle stable Version 5.10.1.1007) und in C:\Perl installieren.
Um sicherzustellen, dass Perl in der Kommandozeile verwendet werden kann, müssen noch Umgebungsvariablen gesetzt werden. Diese sind bei Windows 7 unter Systemsteuerung -> System und Sicherheit -> System -> Erweiterte Systemeinstellungen -> Umgebungsvariablen zu erreichen.
Bei den Benutzervariablen wird hier entweder eine neue Variable PATH angelegt und gefüllt bzw. falls diese existiert mit folgendem Inhalt ergänzt:
c:\mingw;C:\Mingw\bin;C:\mingw\mingw32\bin; c:\msys\1.0\bin;c:\perl\bin
Weiterhin wird hier noch die Variable PKG_CONFIG_PATH angelegt und auf
C:\MinGW\lib\pkgconfig
gesetzt. Dies wird später noch benötigt.
Falls man sich bei der Installation von MinGW oder MSYS für andere Pfade entschieden hat, muss man diese Werte natürlich sinngemäß anpassen. In der Eingabeaufforderung von Windows (zu erreichen über Start -> cmd.exe -> Enter) kann durch Eingabe von
perl
die Funktion von Perl getestet werden. Wenn keine Fehlermeldung erscheint, hat es funktioniert (mit Strg+C abbrechen).
4. wget und unzip für Windows
Die Windowsversion von wget kann hier heruntergeladen werden: Download
Die wget.exe aus dem Archiv in das Verzeichnis C:\MinGW entpacken.
Die Windowsversion von unzip kann hier heruntergeladen werden: Download
Den ganzen Inhalt des Archivs in das Verzeichnis C:\MinGW entpacken.
5. GIMP Quelltext
Der Quelltext der aktuellen GIMP-Version (stable, 2.6.9) kann von folgendem FTP-Server heruntergeladen werden: Download
Den heruntergeladenen Quelltext entpacken wir nach C:\gimp (Order ggf. vorher anlegen) – durch die im Archiv enthaltene Ordnerstruktur liegen diese nun in folgendem Ordner: C:\gimp\gimp-2.6.9
6. Grundlegende Bibliotheken
Nun verwenden wir eine Kombination der soeben installierten Tools wget und unzip, um grundlegende Bibliotheken für das Kompilieren von GIMP zu installieren. Über ein Skript wird der Download und die Installation dieser Bibliotheken stark vereinfacht, da man diese ansonsten manuell herunterladen und entpacken müsste. Die untenstehende Version des Skripts basiert auf einem veralteten Tutorial zum Kompilieren von GIMP.
#!/bin/sh MINGW="/mingw/" TMP_DIR="c:/temp" GLIB_BASE="http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.22/" GLIB_PACKAGES="glib_2.22.5-1_win32 glib-dev_2.22.5-1_win32" GTK_BASE="http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/2.20/" GTK_PACKAGES="gtk+-bundle_2.20.0-20100406_win32" GTK_DEP_BASE="http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/" GTK_DEP_PACKAGES="gettext-tools-0.17 gettext-runtime-0.17-1 gettext-runtime-dev-0.17-1 pkg-config_0.23-3_win32 libiconv-1.9.1.bin.woe32" LIBART_BASE="ftp://ftp.gnome.org/pub/gnome/binaries/win32/libart_lgpl/2.3" LIBART_PACKAGES="libart_lgpl-2.3.17 libart_lgpl-dev-2.3.17" MINGW_BASE="http://heanet.dl.sourceforge.net/sourceforge/gnuwin32/" MINGW_PACKAGES="libpng-1.2.37-bin libpng-1.2.37-dep libpng-1.2.37-lib jpeg-6b-4-bin jpeg-6b-4-dep jpeg-6b-4-lib tiff-3.8.2-1-bin tiff-3.8.2-1-lib freetype-2.3.5-1-bin freetype-2.3.5-1-lib zlib-1.2.3-bin zlib-1.2.3-lib libgw32c-0.4-lib libiconv-1.9.2-1-bin libiconv-1.9.2-1-dep libiconv-1.9.2-1-lib" EXPAT_BASE="ftp://ftp.jclark.com/pub/xml/" EXPAT_PACKAGE="expat" EXPAT_DLL="expat/bin/xmltok.dll" cd $TMP_DIR echo "Downloading glib packages..." for PACKAGE in $GLIB_PACKAGES; do if [ -e "$PACKAGE.zip" ]; then echo " Already there - extracting $PACKAGE."; else echo " Getting $PACKAGE."; wget "$GLIB_BASE/$PACKAGE.zip"; fi echo " Extracting $PACKAGE."; unzip -o -q "$PACKAGE.zip" -d $MINGW; done echo "OK" echo "Downloading GTK dependency packages..." for PACKAGE in $GTK_DEP_PACKAGES; do if [ -e "$PACKAGE.zip" ]; then echo " Already there - extracting $PACKAGE."; else echo " Getting $PACKAGE."; wget "$GTK_DEP_BASE/$PACKAGE.zip"; fi echo " Extracting $PACKAGE."; unzip -o -q "$PACKAGE.zip" -d $MINGW; done echo "OK" echo "Downloading GTK packages..." for PACKAGE in $GTK_PACKAGES; do if [ -e "$PACKAGE.zip" ]; then echo " Already there - extracting $PACKAGE."; else echo " Getting $PACKAGE."; wget "$GTK_BASE/$PACKAGE.zip"; fi echo " Extracting $PACKAGE."; unzip -o -q "$PACKAGE.zip" -d $MINGW; done echo "OK" echo "Downloading libart_lgpl packages..." for PACKAGE in $LIBART_PACKAGES; do if [ -e "$PACKAGE.zip" ]; then echo " Already there - extracting $PACKAGE."; else echo " Getting $PACKAGE."; wget "$LIBART_BASE/$PACKAGE.zip"; fi echo " Extracting $PACKAGE."; unzip -o -q "$PACKAGE.zip" -d $MINGW; done echo "OK" echo "Downloadung GnuWin32 packages..." for PACKAGE in $MINGW_PACKAGES; do if [ -e "$PACKAGE.zip" ]; then echo " Already there - extracting $PACKAGE."; else echo " Getting $PACKAGE."; wget "$MINGW_BASE/$PACKAGE.zip"; fi echo " Extracting $PACKAGE."; unzip -o -q "$PACKAGE.zip" -d $MINGW; done echo "OK" echo "Downloading and installing expat" if ! [ -e "$EXPAT_PACKAGE.zip" ]; then wget -q "$EXPAT_BASE/$EXPAT_PACKAGE.zip"; fi unzip -o -q "$EXPAT_PACKAGE.zip" -d . cp $EXPAT_DLL $MINGW/bin echo "OK" echo "Freetype" cp -Rp $MINGW/include/freetype2/freetype $MINGW/include/freetype
Dieses Skript in C:\gimp\gimp-dep.sh platzieren (kann auch hier heruntergeladen werden) und ein leeres Verzeichnis C:\temp anlegen. Nach dem Starten von MSYS können wir über folgende Befehle in der MSYS-Konsole das Skript starten:
cd /c/gimp sh gimp-dep.sh
Wenn alles glattgeht, lädt das Skript die benötigten Pakete nach C:\temp herunter und entpackt sie automatisch nach C:\MinGW.
7. pthreads
Zusätzlich zu den soeben installierten Bibliotheken benötigen wir außerdem noch pthreads.
Wir laden also pthreads in der aktuellen Version 2.8.0 herunter: Download
Aus diesem Archiv benötigen wir die pthread.h und die sched.h welche wir nach C:\mingw\include\ kopieren.
8. BABL und GEGL
Nun zu den beiden letzten Komponenten, die wir selbst kompilieren werden: babl und gegl. Da gegl auf babl basiert, holen wir uns zuerst babl in der Version 0.1.2: Download
Das Archiv wird wieder wie gewohnt nach C:\gimp\entpackt, so dass wir diese Ordnerumgebung erhalten: C:\gimp\babl-0.1.2
Um einen Compiler-Fehler zu verhindern, kommentieren wir in den for-Schleifen in der Datei concurrency-stress-test.c im Ordner C:\gimp\babl-0.1.2\tests alle pthread-Funktionen aus, so dass es ungefähr so aussieht:
[...] for (i = 0; i < N_THREADS; i++) { // pthread_create (&threads[i], // NULL, /* attr */ // babl_fish_path_stress_test_thread_func, // NULL /* arg */); } /* Wait for them all to finish */ for (i = 0; i < N_THREADS; i++) { // pthread_join (threads[i], // NULL /* thread_return */); } [...]
Kompiliert wird das Ganze in der MSYS Konsole so (die auftretenden Warnungen wegen nicht verwendeter Variablen kann man ignorieren):
cd /c/gimp/babl-0.1.2/ ./configure make make install
Da „make install“ nicht so richtig funktioniert, müssen die so erhaltenen Dateien aus C:\gimp\babl-0.1.2 manuell kopiert werden:
- Das Verzeichnis babl komplett nach C:\mingw\include\, so dass dort C:\mingw\include\babl entsteht
- Alle Headerdateien *.h aus dem Verzeichnis babl nochmal direkt nach C:\mingw\include
- Das Verzeichnis .libs aus babl nach C:\mingw\lib\ kopieren, so dass dort C:\mingw\lib\.libs entsteht
- Die Datei libbabl-0.1.la aus babl nach C:\mingw\lib\
- Die Datei babl.pc aus dem Stammverzeichnis von babl nach C:\mingw\lib\pkgconfig\
Damit sind alle Voraussetzungen erfüllt, um das gleiche Spiel mit gegl durchzuziehen: Download
Wie vorher nach C:\gimp\ entpacken, und dann wieder in der MSYS Konsole kompilieren (dauert eine Weile):
cd /c/gimp/gegl-0.12/ ./configure make make install
Auch die hier erhaltenen Dateien müssen wieder aus C:\gimp\gegl-0.1.2 manuell kopiert werden:
- Das Verzeichnis gegl komplett nach C:\mingw\include\, so dass dort C:\mingw\include\gegl entsteht
- Alle Headerdateien *.h aus dem Verzeichnis gegl nochmal direkt nach C:\mingw\include
- Alle Headerdateien *.h aus den Unterverzeichnissen gegl/buffer, gegl/graph, gegl/module, gegl/operation, gegl/process und gegl/property-types nochmal direkt nach C:\mingw\include
- Das Verzeichnis gegl/operation nach C:\mingw\include, so dass dort C:\mingw\include\operation entsteht
- Das Verzeichnis .libs aus gegl nach C:\mingw\lib\ kopieren, so dass es dort in das von babl vorhandene C:\mingw\lib\.libs integriert wird
- Die Datei libgegl-0.1.la aus gegl nach C:\mingw\lib\
- Die Datei gegl.pc aus dem Stammverzeichnis von gegl nach C:\mingw\lib\pkgconfig\
9. intltool
Update: intltool muss noch auf den neuesten Stand gebracht werden, damit das Kompilieren von GIMP funktioniert.
http://ftp.gnome.org/pub/gnome/sources/intltool/0.40/
Tarball downloaden und in c:\MingW in eigenen Pfad entpacken.Msys starten und
cd /mingw/intltool-0.40.6
./configure
make
make install
Danke an herrgismo für diese Anmerkung!
10. Endlich GIMP kompilieren
Wenn bis hierher alles glatt gegangen ist, können wir nun endlich GIMP (ohne Python) kompilieren. Wer gern Python mag, kann Python installieren (analog wie Perl) und die Konfigurationsanweisung weglassen. Wie immer in der MSYS Konsole folgende Befehle ausführen (nach „make“ + Enter am besten Kaffeetrinken gehen):
cd /c/gimp/gimp-2.6.9/ ./configure --disable-python make make install
Gestartet werden kann GIMP dann über die erzeugte Executable: C:\msys\1.0\local\bin\gimp-2.6.exe
Viel Spaß! 🙂
P.S.: Habe gerade darüber nachgedacht, dass man sich vielleicht einen Großteil der Hin- und Her-Kopiererei sparen kann, wenn man die PATH-Variable geschickt erweitert. Werde ich bei Gelegenheit mal überprüfen.
Pingback: GIMP-Plugins unter Windows kompilieren | Thomas Lutz
Vielen Dank für dieses gelungene Tutorial. Werde ich am WE versuchen.
Wenn man sich die Grundkonfiguration einmal nach dem Schema eingerichtet hat, müsste man soch immer nur den aktuellen Quellcode laden und komplieren, oder?
Gruß
leachim
Sag Bescheid, ob es geklappt hat.
Ich habe damit 2.6.8 und 2.6.9 kompiliert, sollte also mit neueren Versionen ebenso funktionieren – es sei denn, es kommen (z.B. mit 2.7) neue Abhängigkeiten dazu. Das sollte sich dann aber auch recht einfach fixen lassen.
Hi,
habe soeben Gimp 2.7.1 kompiliert.
Das Tut ist also up2date.
Einzig intltool muss man uptöten.
[QUOTE]
http://ftp.gnome.org/pub/gnome/sources/intltool/0.40/
Tarball downloaden und in c:\MingW in eigenen Pfad entpacken.
Msys starten und
cd /mingw/intltool-0.40.6
./configure
make
make install
[/QUOTE]
Dann funzt das. 😉
Gedanke:
wenn man babl und gegl auch gleich ins mingw entpackt,
kann man sich dann nicht das lästige rumkopieren sparen?
Vielen Dank Thomas, ganz grosses Kino! (up)
Starten tut auch dieses Gimp leider nicht auf diesem Rechner, er bringt wieder den libcairo-2.dll Fehler.
Hast du da ne Idee?
Gruss Ingo
[gegl-tile-backend-tiledir.lo] Error 1
[all-recursive] Error 1
Compiler at compile GEGL without success. Did not produce the required documents (. Lib which do not file). what will I do?
Thank you
Ingo: Den libcairo-2.dll Fehler hatte ich nicht, welches Windows läuft bei dir?
lvxing: Can you give me more context messages where the errors are occuring?
I want to use GIMP to do a software. The software will support handwriting function. When opening the software, I can use a pen or a finger painting on the computer screen. But I do not know the GIMP source code, you can give me some advice?
Thanks again!
lvxing(吕行)
Failed to set operation type gegl:nop.using a pass through op instead
where the errors are occuring?
How to do?
谢谢
** WARNING**:Failde to det operation type gegl:nop,using assthrough op instead.
**:WARNING**: The failing op was ‚gegl:nop‘ this means that GIMP was unable to locate any of it’s plug-ins.Try making GIMP_PATH point to the directory containing the .so|dll files with the image processing plug-ins, optionally you could try to make to point to the operations directory of a GEGL sourcetree with a build.
make[5]: ***[clones.png] Error 5
make[4]: ***[images.stamp] Error 2
make[3]: ***[all-recursive] Error 1
Ich bin ein Rookie.
I am a rookie.please help me.
Thanks
not gimp
shuld gegl
lvxing: Can you post the entire output while building gegl using a service like http://pastebin.com/ ?
Thomas Lutz:
I’m sorry. I can not. The first time I heard „postebin“. I just read something about it,but I still do not know how specific should I do?
Thanks
Warning:This system can not link to static archive ../../gegl/libgegl-0-1.la.
http://pastebin.com/DHJaUSjn
lvxing: Sorry, I cannot reproduce your error. Compiling babl worked for you?
You can try to use
./configure --disable-docs
before compiling gegl as stated here.Thank you all the same. I try it.I have done.But there is a new issue of making the GIMP.
collect2: ld returned 2 exit status
make[3]: ***[gimp-2.6.exe] Error 1
make[3]: leaving directory ‚/c/gimp/gimp-2.6.9/app‘
make[2]: ***[all-recursive] Error 1
make[2]: leaving directory ‚/c/gimp/gimp-2.6.9/app‘
make[1]: ***[all-recursive] Error 1
make[1]: Leaving directory ‚/c/gimp/gimp-2.6.9‘
make: ***[all] Error 2
what is the reason causing this error?
c:/gimp/gimp-2.6.9/gegl/gegl-init.c:53: multiple definition of ‚[email protected]‘
………………………………………………
collect2: ld returned 2 exit status
make[3]: ***[gimp-2.6.exe] Error 1
make[3]: leaving directory ‘/c/gimp/gimp-2.6.9/app’
make[2]: ***[all-recursive] Error 1
make[2]: leaving directory ‘/c/gimp/gimp-2.6.9/app’
make[1]: ***[all-recursive] Error 1
make[1]: Leaving directory ‘/c/gimp/gimp-2.6.9′
make: ***[all] Error 2
what is the reason causing this error?
c:/gimp/gimp-2.6.9/gegl/gegl-init.c:53: multiple definition of ‘[email protected]′
c:/gimp/gimp-2.6.9/libgimpbse/.libs/libgipbase-2.0.a:c:/gimp/gimp-2.6.9/libgimpbase/gimpenv.c:278
sanity.o …………anity_check……
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_major_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_minor_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_micro_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_minor_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_micro_version
collect2: ld returned 2 exit status
make[3]: ***[gimp-2.6.exe] Error 1
make[3]: leaving directory ‘/c/gimp/gimp-2.6.9/app’
make[2]: ***[all-recursive] Error 1
make[2]: leaving directory ‘/c/gimp/gimp-2.6.9/app’
make[1]: ***[all-recursive] Error 1
make[1]: Leaving directory ‘/c/gimp/gimp-2.6.9′
make: ***[all] Error 2
what is the reason causing this error?
please help me!
I don’t want to give it up!
Thanks!
Have you tried compiling an older version, e.g. 2.6.8 ?
I try it (e.g.2.6.8). The same error.
c:/gimp/gimp-2.6.9/gegl/gegl-init.c:53: multiple definition of ‘[email protected]′
c:/gimp/gimp-2.6.9/libgimpbse/.libs/libgipbase-2.0.a:c:/gimp/gimp-2.6.9/libgimpbase/gimpenv.c:278
sanity.o …………anity_check……
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_major_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_minor_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_micro_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_minor_version
c:/gimp/gimp-2.6.9/app/sanity.c:104 imp_gimp_micro_version
collect2: ld returned 2 exit status
make[3]: ***[gimp-2.6.exe] Error 1
make[3]: leaving directory ‘/c/gimp/gimp-2.6.9/app’
make[2]: ***[all-recursive] Error 1
make[2]: leaving directory ‘/c/gimp/gimp-2.6.9/app’
make[1]: ***[all-recursive] Error 1
make[1]: Leaving directory ‘/c/gimp/gimp-2.6.9′
make: ***[all] Error 2
lvxing: Why is there still 2.6.9 in the path? Which version of Windows are you using?
c:/gimp/gimp-2.6.8/gegl/gegl-init.c:53: multiple definition of ‘[email protected]′
c:/gimp/gimp-2.6.8/libgimpbse/.libs/libgipbase-2.0.a:c:/gimp/gimp-2.6.9/libgimpbase/gimpenv.c:278
sanity.o …………anity_check……
c:/gimp/gimp-2.6.8/app/sanity.c:104 imp_gimp_major_version
c:/gimp/gimp-2.6.8/app/sanity.c:104 imp_gimp_minor_version
c:/gimp/gimp-2.6.8/app/sanity.c:104 imp_gimp_micro_version
c:/gimp/gimp-2.6.8/app/sanity.c:104 imp_gimp_minor_version
c:/gimp/gimp-2.6.8/app/sanity.c:104 imp_gimp_micro_version
collect2: ld returned 2 exit status
make[3]: ***[gimp-2.6.exe] Error 1
make[3]: leaving directory ‘/c/gimp/gimp-2.6.8/app’
make[2]: ***[all-recursive] Error 1
make[2]: leaving directory ‘/c/gimp/gimp-2.6.8/app’
make[1]: ***[all-recursive] Error 1
make[1]: Leaving directory ‘/c/gimp/gimp-2.6.8′
make: ***[all] Error 2
———————————————————————-
/bin/install -c .libs/libgimpconfig-2.0.dll.a /usr/local/lib
/bin/install: cannot stat `.libs/libgimpconfig-2.0.dll.a‘: No such file or directory
make[2]: *** [install-libtool-import-lib] Error 1
make[2]: Leaving directory `/c/gimp/gimp-2.6.8/libgimpconfig‘
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/c/gimp/gimp-2.6.8/libgimpconfig‘
make: *** [install-recursive] Error 1
When I make install it,I did not get libgimpcongfig-2.0.dll.a.
where can I get it ?
How can I get it ?
THANKS!
I’m not sure what you are doing wrong. Everything you need should be described in my post. And yet again my question: Which version of Windows are you using?
windows7,
when I make it,it is no proplem ,then I make install I get this
/bin/install -c .libs/libgimpbase-2.0.dll.a /usr/local/lib
/bin/install: cannot stat `.libs/libgimpbase-2.0.dll.a’: No such file or directory
make[2]: *** [install-libtool-import-lib] Error 1
make[2]: Leaving directory `/c/gimp/gimp-2.6.8/libgimpbase’
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/c/gimp/gimp-2.6.8/libgimpbase’
make: *** [install-recursive] Error 1
I down libgimpbase-2.0.dll.a from the internet.
but it have similar error ,
/bin/install: cannot stat `.libs/llibgimpcolor-2.0.dll.a’: No such file or directory
make[2]: *** [install-libtool-import-lib] Error 1
make[2]: Leaving directory `/c/gimp/gimp-2.6.8/libgimpcolor’
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/c/gimp/gimp-2.6.8/libgimpcolor’
make: *** [install-recursive] Error 1
I down libgimpcolor-2.0.dll.a from the internet.
……………………
but I can’t find libgimpconfig-2.0.dll.a from internet.
I don’t what I can do ?
thanks!
Hi Thomas,
vielen Dank für die Anleitung.
Konnte soweit alles zusammenstellen.
Aber configure von gimp bricht dann mit folgender Meldung ab:
checking whether binary relocation support should be enabled… no
checking for _NL_MEASUREMENT_MEASUREMENT… no
checking whether NLS is requested… yes
checking for intltool >= 0.36.3… ./configure: /c/Mingw/bin/intltool-update: /o
pt/perl/bin/perl: bad interpreter: No such file or directory found
configure: error: Your intltool is too old. You need intltool 0.36.3 or later.
Hi Nick, schau dir zu diesem Problem den Kommentar von „herrgismo“ an (Nummer 3).
Hi Thomas,
das war’s!
Kannst Du das in der Anleitung noch nachtragen? Scheint ohne nicht zu laufen.
Super Anleitung, vielen Dank für die Hilfe.
Gruss, Nick
Nick: Ist nun in der Anleitung nachgetragen. Danke für Deinen Hinweis!
Pingback: Pandur2000 - Stefan Jacobi » PSP, Fireworks oder.. Gimp?! »
Hello Thomas,
thank you for an excellent guide.
I tried it, and unfortunately something goes wrong at the very end:
sanity.o:sanity.c:(.text+0x3f): undefined reference to
`_imp__gimp_major_version‘
sanity.o:sanity.c:(.text+0x4a): undefined reference to
`_imp__gimp_minor_version‘
sanity.o:sanity.c:(.text+0x50): undefined reference to
`_imp__gimp_micro_version‘
sanity.o:sanity.c:(.text+0x7e): undefined reference to
`_imp__gimp_minor_version‘
sanity.o:sanity.c:(.text+0x89): undefined reference to
`_imp__gimp_micro_version‘
collect2: ld returned 1 exit status
I also updated the excellent „CompileGimpAtWindowsShellScript“, referenced in thread http://www.gimptalk.com/forum/viewtopic.php?f=2&t=45857&p=358330&hilit=compile+on+windows#p358330.
It returns exactly the same error.
My updated script is here:
http://www.bitberry.com/tempdir/gimp/compile-gimp.sh
Complete compile output is here:
http://www.bitberry.com/tempdir/gimp/out.txt (zipped:
http://www.bitberry.com/tempdir/gimp/out.zip)
The compile almost gets to the end. Here is the last error:
CC gimp-log.o windres gimp.rc gimprc.o
CCLD gimp-2.7.exe Info: løser _babl_total_usecs ved at lænke til
__imp__babl_total_usecs (automatisk import)
c:\mingw\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe:
warning: auto-importing has been activated without –enable-auto-import
specified on the command line.
This should work unless it involves constant data structures
referencing symbols from auto-imported DLLs.
sanity.o:sanity.c:(.text+0x3f): undefined reference to
`_imp__gimp_major_version‘
sanity.o:sanity.c:(.text+0x4a): undefined reference to
`_imp__gimp_minor_version‘
sanity.o:sanity.c:(.text+0x50): undefined reference to
`_imp__gimp_micro_version‘
sanity.o:sanity.c:(.text+0x7e): undefined reference to
`_imp__gimp_minor_version‘
sanity.o:sanity.c:(.text+0x89): undefined reference to
`_imp__gimp_micro_version‘
collect2: ld returned 1 exit status
make[3]: *** [gimp-2.7.exe] Error 1
make[3]: Leaving directory `/gimptest2/gimp-compile-dir/gimp-2.7.0/app‘
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/gimptest2/gimp-compile-dir/gimp-2.7.0/app‘
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/gimptest2/gimp-compile-dir/gimp-2.7.0′
make: *** [all] Error 2
I’m using MinGW-5.1.6 and MSYS-1.0.11 on Windows XP SP3 32-bit in a
VMWare virtual machine and tried both GIMP 2.6.9 and 2.7 – same result.
Any idea what could be causing this?
Any hints would be greatly appreciated.
Hi Thomas,
I follow your instruction steps, but has the same problem as them. Can zip your MInGW folder and share it to us, I think it will help us to compile GIMP-2.6.9 successfullt.
ShineLin
Hallo,
super Tut bis hier hin. Wenn ich allerdings versuche intltool upzudaten wird gemäckert, dass perl 5.8.1 required wird. Ich habe aber zuerst die aktuelleste Installiert und dann später noch die in deinem tut verwendete. Kein Erfolg leider. Hast du vielleicht einen Tip?
checking for perl… /bin/perl
checking for perl >= 5.8.1… configure: error: perl 5.8.1 is required for intltool
gruß Max
@Brian R, @shine:
Sorry, no idea – which exact version of babl and gegl did you use?
@mxlampert:
Are you sure you set your PATH-Variable right? What happens when you type „perl -v“ into MSYS?
Finally i got it working. I had to fiddle arround with that perl stuff. MSYS has had an older version of perl as my windows installation.
Is it possible to compile 2.7 with your guide?
Can you tell us how exactly you solved the problem with the older version?
Have you tried compiling 2.7? (I have not)
I think the problem was, that i used the x64 version of perl which installs it self into c:\perl64 so the PATH variable was set wrong.
At the moment gimp 2.7.1 compiles.
Unsing „make -j11“ made it very fast on my XEON L5640.
regards and thx 🙂
Now there is another Problem, after compiling i can not start gimp. i get an error massage that says: g_maloc0_n have not been found in libglib-2.0-0.dll. ?!
Ok, again i finally made it. i have had an old version of libglib-2.0-0.dll on my machine.
For distributing i had to copy nearly all of the dlls from mingw/bin to gimp/bin.
Now it seems to work on other machines either.
Pingback: PSP, Fireworks oder.. Gimp?! – Stefan Jacobi