Jak użyć „apt”, aby uzyskać kod źródłowy, a następnie wykonać osobną kompilację

26

Chcę uzyskać kod źródłowy dla projektu, a następnie zbudować go w taki sam sposób, jak apt. Np. Chcę działający kod źródłowy i móc uruchomić polecenie „make” lub podobne polecenie w źródle.

Jak mogę to zrobić?

W szczególności chcę uzyskać to źródło „icedtea-6-jre-jamvm”

Berlin Brown
źródło

Odpowiedzi:

28

W tym przykładzie użyję icedtea-6-jre-jamvmjako pakietu, który chcesz odbudować.

Najpierw zainstaluj wszystkie zależności i zbuduj niezbędne:

sudo apt-get build-dep icedtea-6-jre-jamvm
sudo apt-get install build-essential

Następnie pobierz źródło:

apt-get source icedtea-6-jre-jamvm

Następnie cd w katalogu katalogu openjdk i skompiluj deb, -us i -uc tutaj pomiń testy GPG, jeśli tylko odbudowujesz go dla siebie:

cd openjdk-6-6b24-1.11.5
dpkg-buildpackage -us -uc

Następnie przejdź do katalogu i powinieneś mieć pliki .deb.

Źródła:

Jorge Castro
źródło
to bardzo miłe! jedną z największych przeszkód w rozpoczęciu pracy nad darmowym oprogramowaniem jest „doprowadzenie go do kompilacji” i miło jest widzieć to zautomatyzowane. Byłoby jednak fajnie, gdybyśmy mogli wygenerować pliki binarne i zatrzymać się na nich (tj. Nie generować debatów), ponieważ jest to nieco wygodniejsze dla programistów, którzy często edytują i kompilują ... Czy znasz sposób na zrobienie tego że?
josinalvo
7

aby po prostu skompilować pakiet, użyj skryptu debian / rules, który znajduje się w każdym pakiecie debain:

sudo apt-get build-dep <package>
apt-get source <package>
cd <package>_<version>
./debian/rules binary

robi to tylko część konfiguracji i kompilacji.

Michael Dreher
źródło
4

Możesz użyć następującego:

apt-get source <package>

musisz upewnić się, że zainstalowałeś zależności kompilacji:

sudo apt-get build-dep <package> 

Aby uzyskać więcej informacji, uruchom:

man apt-get

Alternatywna opcja: najpierw musisz znać lokalizację paczki. następnie pobierz plik tar, używając:

sudo wget <url>

Następnie możesz go rozpakować i skompilować za pomocą make

jeśli nie masz pewności co do określonego polecenia, zajrzyj do folderu, powinien znajdować się READMEplik lub polecenie, INSTALLktóre powie ci odpowiednie polecenie.

meda
źródło
To pochodzi z witryny hosta. Czy można to zrobić za pomocą „apt. Całkowicie poprzez „apt” minus rzeczywistą kompilację. Np. Czy mogę zrobić „apt get source”, a następnie przejść do tego katalogu, a następnie „make”.
Berlin Brown,
przepraszam, właśnie zaktualizowałem pytanie!
meda