Kompilacja GIMPa w systemie Linux

Wstęp

UWAGA! W większości "paczkowych" dystrybucji kompilacja okazuje się zupełnie zbędna, chyba że: wersja paczkowa nie chce współpracować z naszym systemem z jakiegoś podejrzanego powodu | chcemy skompilować nowszą wersję programu, niż ta dostępna w repozytorium | jesteśmy geekami, i chcemy sobie własnoręcznie dobrać flagi oraz optymalizację kompilacji :).

Ta metoda instalacji może się wydać Linuksowym żółtodziobom znacznie trudniejsza, z powodu niejednokrotnie przerażających, niespełnionych zależności związanych z pakietami programistycznymi (które są normalnością w dystrybucjach paczkowych). W niektórych dytrybucjach, takich jak Gentoo kompilacja jest jedyną metodą, lecz tu użytkownicy mają do dyspozycji w pełni zautomatyzowane narzędzie stworzone do tego celu. Inne zaś i jego nie posiadają, i trzeba nadwyrężyć palców, by móc cieszyć się naszym ulubionym programem graficznym.

Warto wspomnieć, że w przypadku wyjścia nowej wersji programu, zawsze na kilka/kilkanaście dni wcześniej od paczek pojawiają się jego źródła. Przed kompilacją dobrze zapoznać się z tym artykułem.


Przygotowanie

Pobieranie źródeł

Kod źródłowy programu możemy pobrać między innymi z:

Po podjęciu decyzji, którą wersję sobie mamy zamiar sprawić, pobieramy archiwum ze źródłami (nazwy archiwów przykładowe!):

Za pomocą programu wget:

$ wget ftp://ftp.gimp.org/pub/gimp/v2.2/gimp-2.2.13.tar.bz2

Bądź programu curl:

$ curl -o gimp-2.2.13.tar.bz2 ftp://ftp.gimp.org/pub/gimp/v2.2/gimp-2.2.13.tar.bz2

Lub po prostu klikamy w link w naszej przeglądarce - zapisujemy go.

Rozpakowywanie źródeł

Dla archiwum tar.bz2:

$ tar -xjf gimp-2.2.13.tar.bz2

Dla archiwum tar.gz:

$ tar -xzf gimp-2.2.13.tar.gz


Kompilacja

Konfiguracja i zależności

Wchodzimy do katalogu z rozpakowanymi przed chwilą źródłami:

$ cd gimp-2.2.13/

Jeśli chcemy zapoznać się z dokładniejszymi instrukcjami kompilacji, warto zapoznać się z zawartością plików '''README''', i '''INSTALL'''.

Warto także, jeśli mamy zamiar dostosować do swych potrzeb kompilowany program, zajrzeć do listy dostępnych argumentów konfiguracji:

$ ./configure —help

Jeśli nie jesteśmy ani ciekawscy, ani nie potrzebujemy zaawansowanych ustawień, po prostu konfigurujemy źródła:

$ ./configure

Konfigurator sprawdzi czy wszystkie konieczne do kompilacji programy są zainstalowane w naszym systemie, oraz wspomni o opcjonalnych, dodatkowych - poszerzających możliwości GIMPa.

Oczywiście, jeśli czegoś w naszym systemie zabraknie, czy też w przypadku posiadania przestarzałej wersji jakiegoś programu/biblioteki, należy dokonać instalacji/aktualizacji z dostępnych nam paczek, lub też skompilować odpowiednią wersję.

Kompilacja i instalacja

Gdy (w końcu), konfiguracja przebiegnie prawidłowo, i nie zwróci nam błędu, możemy zacząć kompilację:

$ make

Ten proces może zająć trochę czasu, w zależności od wydajności naszego systemu/komputera. Przykładowo, na Duronie 1,1Ghz, 512MB RAM i systemie Ubuntu, kompilacja wersji 2.3 trwa około 30-35 minut.

Gdy kompilacja przebiegnie prawidłowo, możemy zainstalować skompilowany, jeszcze cieplutki program.
W tym celu logujemy się na użytkownika root, który ma wymagane do skopiowania plików do katalogów głównego systemu plików uprawnienia i używamy komendy ''make install'':

$ su
{{Password:

# make install}}

Jeśli wolimy na na czas od konfiguracji (jeśli uprzednio naprawiliśmy niespełnione zależności), kompilacji i instalacji zostawić komputer bez naszej obecności, możemy łatwo zautomatyzować cały proces:

$ su
Password:
# ./configure; make && make install

Po konfiguracji program zacznie się automatycznie kompilować, a jeśli kompilacja przebiegnie bezbłędnie, program zostaje zainstalowany. Wszystko oczywiście z poziomu użytkownika root, by program mógł pod naszą nieobecność się zainstalować.


Uruchomienie

Nie pozostaje nam nic innego jak z satysfakcją uruchomić GIMPa i tworzyć:

$ gimp-2.4

Lub ''gimp-2.X", gdzie X to wersja naszego GIMPa - zależnie od skompilowanej wersji. Można użyc też komendy "gimp", bez wersji w nazwie.


Zobacz też

O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-ShareAlike 3.0 License