Problem z instalacją tar.gz - "nie można utworzyć pliku"

Witam.

Jestem od dzisiaj na Linuxie Ubuntu. Nauczyłem się montować paczki. To moja pierwsza paczka, która przeszła operację “Make”, ale przy “Make install” to już tryk pyk błąd. O to, co pokazało w Terminalu:

Będę wdzięczny za pomoc. Bardzo tego potrzebuje [czyli GLib’a].

Gdyby przeczytać te komunikaty, można domniemywać, że wymagane są uprawnienia do zapisu do /usr/local/bin.

Wpisałem “sudo make install” i pobiegło.

Jeszcze jedno pytanie: gdzie to się skompilowało?

Gdyby przeczytać poprzednie komunikaty, można domniemywać, że między innymi pod /usr/local/bin

(a raczej skompilowało w katalogu ze źródłami, a make install tylko pokopiował, więc równie dobrze odpowiedź może brzmieć że w katalogu ze źródłami)

Mała rada: nie usuwaj katalogu /home/kalvek/glib-2.6.6. Jeżeli to zrobisz, to nie będziesz mógł w żaden prosty sposób odinstalować paczki, którą skompilowałeś i zainstalowałeś za pomocą make install.

Po pierwsze: zmień nazwę tematu. “tar.gz” to archiwum “tar” poddane kompresji “gzip”, zwane często: “tarball”.

Nieskompresowane archiwum “tar” tworzymy po to, by dowolną liczbę plików “zamknąć” w jednym, zbiorczym pliku. Uprawnienia plików zostaną zachowane, niezależnie od dyskowego systemu plików, na którym przechowuje się plik archiwum.

Archiwum “tar” poddajemy kompresji w celu zmniejszenia rozmiaru pliku. Tak, ma to sens nawet teraz, gdy pojemność “domowych” dysków liczona jest w TB.


Przed kompilacją kodu zwykle następuje sprawdzenie systemu na obecność wymaganych bibliotek i aplikacji:

./configure

Polecenie:

./configure --help

wyświetli przewidziane opcje kompilacji, być może da się w ten sposób “coś” usprawnić lub zwiększyć wydajność. Pożytecznym będzie ustawienie ścieżek instalacji, metoda… bezpieczna:

./configure --prefix=/usr

Gdy test na obecność bibliotek (zależności) powiedzie się, przystępujemy do kompilacji:

make

Postępujemy w następujący sposób (w przeważającej liczbie przypadków działa doskonale):

make DESTDIR=/home/nazwa_użytkownika/nazwa_programu install

Chcąc utworzyć pakiet instalacyjny “.deb” w sposób podstawowy: * przechodzimy do folderu “/home/nazwa_użytkownika/nazwa_programu” * tworzymy folder o nazwie “DEBIAN” * przechodzimy do folderu “/home/nazwa_użytkownika/nazwa_programu/DEBIAN” * tworzymy plik “control” * przykładowa treść pliku “control”:

Package: nasz_skompilowany_program

Version: 0.0-1

Architecture: all

Maintainer: 

Installed-Size: rozmiar_podajemy_w_kilobajtach

Depends: 

Section: wpisujemy_sekcję_do_której_można_przypisać_program_polecam_zajrzeć_do_menedżera_Synaptic

Priority: extra

Homepage: 

Description: umieszczamy_opis_programu

W miejsce wymaganej architektury możemy wstawić również “i386” itp. Tworzymy pliki dodatkowe: * “postinst” (skrypt wykonywany w czasie instalacji pakietu, może być pusty; jest wymagany) * “prerm” (skrypt wykonywany w czasie usuwania pakietu, może być pusty; jest wymagany) * “md5sum” (wykaz sum kontrolnych dla plików, warto je umieścić)

Tworzenie pakietu: * w katalogu “/home/nazwa_użytkownika/nazwa_programu” otwieramy terminal * podnosimy swoje uprawnienia przez “su” lub poniższą linijkę rozpoczynamy od “sudo”:

dpkg --build /home/nazwa_użytkownika/nasz_skompilowany_program_0.0-1_all.deb

w przypadku ustawienia “i386”:

dpkg --build /home/nazwa_użytkownika/nasz_skompilowany_program_0.0-1_i386.deb

Równie dobrze zadziała:

dpkg -b /home/nazwa_użytkownika/nasz_skompilowany_program_0.0-1_all.deb


dpkg -b /home/nazwa_użytkownika/nasz_skompilowany_program_0.0-1_i386.deb

Instalujemy utworzony plik via “GDebi” (“dwuklik”, “jednoklik”, “zaznaczenie + Enter”) lub poleceniem:

dpkg -i /home/nazwa_użytkownika/nasz_skompilowany_program_0.0-1_i386.deb