Configurando su Build
Cuando tenga el código fuente que se compila ejecutando ./configure
y make, generalmente usará make install(o sudo make install) para instalarlo. Esto copia archivos del directorio de compilación en la ubicación de instalación. Cuando lo que está instalando proporciona comandos ejecutables, esos ejecutables generalmente se copian en un directorio que está dentro $PATHo al que debería considerar agregar
$PATH.
Aunque la creación e instalación de software a menudo es tan simple como ejecutar ./configure, a makeveces make checko make test, y luego make installo sudo make install, a veces querrá pasar opciones al configurescript para configurar la compilación. En particular, como dice pfnuesel , así es como se configura
dónde se instalará el software. Aunque el make installpaso realmente instala el software, las ubicaciones donde se instalará todo normalmente se establecen en el
./configurepaso.
La opción más común para esto es --prefix. El prefijo predeterminado, cuando no dice configurequé usar, generalmente es /usr/local. (Ocasionalmente, el código fuente de un programa o biblioteca se predetermina a algún otro prefijo. Afortunadamente esto es raro).
Por ./configurelo tanto, suele ser equivalente a ./configure --prefix=/usr/local. Para instalar software en su directorio de inicio, puede usar ./configure --prefix=/home/galahad(si /home/galahades su directorio de inicio) o --prefix="$HOME". Entonces, por supuesto, aún debe compilar e instalar el software con make. Debo decir que no todo el software que se distribuye en forma de código fuente está construido de esta manera. Siempre debe buscar documentación dentro del archivo de código fuente extraído.
Lo que --prefixsignifica
Cuando ejecuta , está indicando que el software debe instalarse en el
directorio. Pero esto rara vez, si alguna vez, coloca archivos sueltos . En su lugar, coloca archivos que tienen diferentes propósitos en los diferentes subdirectorios de . Si esos subdirectorios no existen, los crea../configure --prefix=directorydirectorydirectorydirectory
Los ejecutables generalmente entran directory/bin, aunque pueden entrar directory/sbinsi se usan comúnmente para la administración del sistema o pueden entrar (más raramente, en estos días)
directory/gamessi son juegos. Las bibliotecas entran
directory/libu otro directorio con un nombre similar como
directory/lib32. Los archivos de encabezado entran
directory/include. Entran las páginas del manual
directory/man. Los archivos de datos utilizados por el software entran
directory/share.
Eso es lo que significa directoryser un prefijo . Es el directorio principal que contiene las ubicaciones en las que se instalarán diferentes archivos. Por lo tanto, aparece como un prefijo en las rutas absolutas de la mayoría de los archivos y directorios creados al ejecutar make install
o sudo make install.
Hay algunas excepciones a esto. Los archivos de configuración de todo el sistema, que a veces se crean al instalar el software que los usará, aunque no siempre, generalmente entran /etc. Esto no suele verse afectado al especificar un prefijo diferente. Incluso si instala una gran cantidad de software /usr/local, seguirá usándose principalmente
/etc, y su /usr/local/etcdirectorio probablemente no existirá, estará vacío o contendrá muy pocos archivos.
En muchos sistemas, puede encontrar más información sobre el diseño típico del sistema de archivos ejecutando man hier. Si está utilizando un sistema GNU / Linux, puede estar interesado en el Estándar de jerarquía del sistema de archivos .