Właściwy sposób budowania ze źródeł

12

Jestem zalogowany jako zwykły użytkownik. Czy powinienem użyć:

./configure && make && make install

lub

sudo ./configure && sudo make && sudo make install

lub

./configure && make && sudo make install

podczas instalowania pakietów.

I ktoś mógłby wyjaśnić różnice.

Chcę, aby wszyscy użytkownicy mogli z niego korzystać.

8k_of_power
źródło
Jeszcze lepiej ... unix.stackexchange.com
mxmissile
1
Powinieneś zainstalować oprogramowanie z repozytoriów ubuntu lub PPA. Jeśli natrafisz na coś, co nie jest jeszcze zapakowane, możesz rozważyć utworzenie własnej umowy PPA. W ten sposób utrzymasz swój system w czystości, dostarczysz pakiety również innym osobom, a jako darmowy bonus w końcu zdobędziesz więcej testerów.
vtest

Odpowiedzi:

15

3rd wersja jest poprawna, ./configure && make && sudo make install. Tworzenie i konfiguracja mogą być wykonywane jako zwykły użytkownik, ponieważ nie próbujesz zapisywać plików w katalogu systemowym, make installczęsto spróbujesz skopiować pliki binarne do / usr / bin lub / bin, który wymaga dostępu do katalogu root.

Benn
źródło
... i na które nie należy pisać, ponieważ ich zawartością zarządza zarządzanie pakietami.
reinierpost
2
Możesz nawet posunąć się do stworzenia użytkownika local, a następnie wydać a, chown -R local /usr/locala następnie zainstalować oprogramowanie sudo local make install, abyś został ostrzeżony, gdy pakiet napisze gdzie indziej niż pod spodem /usr/local(co może zepsuć zarządzanie pakietami).
reinierpost
Jeśli pakiet jest zbudowany zgodnie ze standardami kodowania GNU, surowy „configure && make && sudo make install” będzie instalowany tylko w / usr / local, a nie w / usr / bin lub / bin.
William Pursell,
4

Potrzebujesz ostatniej wersji:

./configure && make && sudo make install

Skonfiguruj i skonfiguruj może się zdarzyć w folderze lokalnym, ale aby zainstalować, musisz mieć uprawnienia administratora. To polecenie to osiąga.

Upewnij się, że instalowana aplikacja nie znajduje się już w menedżerze pakietów. Zazwyczaj znacznie łatwiej jest korzystać ze wstępnie skompilowanego oprogramowania dla systemu niż próbować znaleźć wszystkie zależności, aby coś skompilować.

Cfreak
źródło
2

Powinieneś używać najmniejszych uprawnień, które działają. To zwykle:

./configure && make && sudo make install
Mark Byers
źródło
2

Opcja nr 3:

./configure

make

sudo make install
Justin Niessner
źródło
2

&& są analizowane przez oryginalną powłokę. Umieszczenie jednego sudo z przodu wpływa tylko na konfigurację. Ostatnia opcja ma największy sens, ponieważ skonfiguruje i skompiluje jako zwykły użytkownik, a następnie zainstaluje wyniki, z których będą mogli korzystać wszyscy.

Jednym zastrzeżeniem jest to, że niektóre skrypty konfiguracyjne wykryją, że działają jako użytkownicy inni niż root i utworzą pliki makefile, które zostaną zainstalowane w $ HOME lub podobnym. W takim przypadku chciałbyś również „sudo ./configure”. Jeśli uruchomisz narzędzie config lub make jako root, będziesz mieć problem z niektórymi plikami należącymi do roota w katalogu zwykłego użytkownika.

Ben Jackson
źródło
2

Zamiast sudo make install powinieneś użyć sudo checkinstall

W ten sposób zainstalowany program jest rozpoznawany przez zarządzanie pakietami i można go usunąć ponownie, jeśli nie będzie już potrzebny.

https://help.ubuntu.com/community/CheckInstall

użytkownik54114
źródło