Forma adecuada de construir desde fuentes

12

Estoy conectado como usuario habitual. ¿Debo usar:

./configure && make && make install

o

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

o

./configure && make && sudo make install

al instalar paquetes.

Y alguien podría explicar las diferencias.

Quiero que todos los usuarios puedan usarlo.

8k_de_power
fuente
Aún mejor ... unix.stackexchange.com
mxmissile
1
Debe instalar software desde repositorios ubuntu o PPA. Si te has encontrado con algo que aún no está empaquetado, no dudes en considerar comenzar tu propio PPA. De esta manera, mantendrá limpio su sistema, también proporcionará paquetes para otras personas y, como bonificación gratuita, eventualmente obtendrá más evaluadores.
vtest

Respuestas:

15

Tu tercera versión es correcta, ./configure && make && sudo make install . Hacer y configurar se puede hacer como un usuario normal, ya que no está intentando escribir archivos en un directorio del sistema, make installa menudo intentará copiar los archivos binarios a / usr / bin o / bin que requieren acceso raíz para escribir.

Benn
fuente
... y en el que no se debe escribir porque su contenido es administrado por la administración de paquetes.
reinierpost
2
Incluso podría ir tan lejos como para crear un usuario local, luego emitir chown -R local /usr/localy luego instalar el software utilizando sudo local make installpara que se le avise cuando un paquete escriba en otro lugar que no sea debajo /usr/local(lo que puede dañar su gestión de paquetes).
reinierpost
Si el paquete se construye de acuerdo con los estándares de codificación gnu, una 'configuración && make && sudo make install' sin formato solo se instalará en / usr / local, y no en / usr / bin o / bin.
William Pursell
4

Necesitas la última versión:

./configure && make && sudo make install

Configurar y hacer puede suceder en su carpeta local, pero necesitará permisos de root para instalar. Ese comando lo logra.

Asegúrese de que la aplicación que está instalando no esté en el administrador de paquetes ya. Por lo general, es mucho más fácil usar el software precompilado para su sistema que tratar de encontrar todas las dependencias para compilar algo.

Cfreak
fuente
2

Debe usar los privilegios mínimos que funcionan. Eso suele ser:

./configure && make && sudo make install
Mark Byers
fuente
2

Opción número 3:

./configure

make

sudo make install
Justin Niessner
fuente
2

Los && son analizados por su shell original. Poner un sudo al frente solo afecta la configuración. La última opción tiene más sentido, porque configurará y compilará como un usuario normal y luego instalará los resultados para que todos los usen.

Una advertencia es que algunos scripts de configuración detectarán que se están ejecutando como usuarios no root y crearán archivos MAKE que se instalarán en $ HOME o similar. En ese caso, también querrás 'sudo ./configure'. Si ejecuta configure o make como root, tendrá la molestia de algunos archivos propiedad de root en su directorio de usuario regular.

Ben Jackson
fuente
2

En lugar de sudo make install, debe usar sudo checkinstall

De esta manera, el programa instalado es reconocido por la administración de paquetes y puede eliminarlo nuevamente si ya no lo necesita.

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

usuario54114
fuente