Archiwa tar.gz są zazwyczaj kodem źródłowym danej aplikacji.
Zależnie od rodzaju programu może być on pisany w C lub C++.
Nieliczne oprogramowanie na linuksa jest pisane w języku Python.
Potrzebne do zbudowania plików binarnych czyli wykonywalnych jest zazwyczaj potrzebne: Cmake czasem Autoconf,Automake,Autopoint,Autoconf-Archive i Libtool.
W systemach opartych o Debiana zainstalować trzeba build-essential natomiast w Archowatych:
To komenda pacman -S base-devel oczywiscie oba przez sudo lub su.
W Fedorze dnf groupinstall "Development Tools"
Takie oprogramowanie buduje się przy pomocy GCC lub Clang.
Do aplikacji w Pythonie potrzebny jest pakiet Meson buduje on kod Pythona z źródeł C często potrzebny jest też pakiet ninja-build do Mesona.
Np:aby zbudować odtwarzacz MPV pobieramy archiwum:
https://github.com/mpv-player/mpv/releases/tag/v0.41.0
Jako tar.gz oczywiście kilkając assets source.tar.gz
Rozpakować taki kod można przez dowolny menadżer archiwum: Ark,Engampa,File Roller itp.
Oczywiście wybierając rozpakuj wszystkie pliki potem przechodzi się do rozpakowanego archiwum przez cd nazwakatalogu np cd mpv-0.41.0
Dalej mkdir build najczęstsza komenda aby zbudować program w katalogu build.
Potem cd build meson setup i jeśli brakuje jakiegoś pakietu na Debianowatych to sudo apt buil-dep nazwapakietu w tym przypadku sudo apt build-dep mpv
W przypadku Fedory sudo dnf builddep mpv a w Archu makepkg -Si lub makepkg -si
Ale w Archu potrzeba pkgbuild a w Fedorze to nie wiem.
Po ninja kolejna komenda to sudo ninja install
Kiedy zaś mamy pakiety pisane w C ale z plikiem cmakecache.txt trzeba wpisać cmake ..
I zaczekać chwilę aż się zbuduje.
A potem sudo make install zaś w przypadku kodu tworzonego z plikami Makefile trzeba wpisać ./autogen lub ./autoreconf -vfi a potem ./configure a w przypadku wymagań bibliotek jakich nie ma w systemie trzeba je zbudować tak samo.
Po mesonie trzeba wpisać ninja build
I to tyle na początek.
Ktoś wie dlaczego pakiet deb przeglądarki Vivaldi po rozpakowaniu ma dwa dziwne pliki bez katalogu bin?
Nie ma tak jak w Operze gdzie są dwa pliki control.tar.xz, data.tar.xz i po rozpakowaniu tego drugiego mamy katalog /usr/bin/