4 - Make

[editar]
Curso gratis creado por Nautopia.net. Extraido de: http://www.nautopia.net
18 de Septiembre de 2005
Make es un comando que construye un binario a partir de unas fuentes y un makefile usando un compilador como gcc. Con make podemos llevar a cabo una de las cosas más interesantes de Linux, que es personalizar y hacerlo para la arquitectura que aloje nuestro sistema. Con ésto, ganaremos en rendimiento al crear los programas optimizados para donde van a ser alojados. Algunas de las opciones que soporta gcc y que podemos utilizar con make más interesantes son:

-pipe  Utiliza intercomunicación entre procesos(pipes) durante la compilación, lo cual acelera el proceso.

-fomit-frame-pointer  Omite la inclusión del puntero al frame de pila guardado cuando este no es necesario, lo cual sirve para acelerar el proceso de compilación.

-O1, -O2, -O3  Seleccionando una de estas tres flags indicaremos al compilador que debe intentar optimizar el código para conseguir mayor velocidad en ejecución, siendo -O3 con lo que conseguiremos más velocidad

-march=Arquitectura  Sin duda la más importante. Si sustituímos Arquitectura por el nombre de la que aloja nuestro sistema compilaremos optimizando para ella exclusivamente, con lo que ganaremos en rendimiento y en estabilidad. Para ver el tipo de CPU que tenemos podemos ejecutar

# cat /proc/cpuinfo

Aquí podeis ver una tabla con las diferentes arquitecturas de algunos de los fabricantes modernos

|| Arquitecturas || Valor de CHOST ||
|| i386 || i386-pc-linux-gnu ||
|| i486 || i486-pc-linux-gnu ||
|| i586 || i586-pc-linux-gnu ||
|| i686 || i686-pc-linux-gnu ||
|| pentium || i686-pc-linux-gnu ||
|| pentium-mmx || i686-pc-linux-gnu ||
|| pentiumpro || i686-pc-linux-gnu ||
|| pentium2 || i686-pc-linux-gnu ||
|| pentium3 || i686-pc-linux-gnu ||
|| pentium4 || i686-pc-linux-gnu ||
|| k6 || i586-pc-linux-gnu ||
|| k6-2 || i586-pc-linux-gnu ||
|| k6-3 || i586-pc-linux-gnu ||
|| athlon || i686-pc-linux-gnu ||
|| athlon-tbird || i586-pc-linux-gnu ||
|| athlon-4 || i586-pc-linux-gnu ||
|| athlon-xp || i586-pc-linux-gnu ||
|| ahtlon-mp || i586-pc-linux-gnu ||
|| alpha || alpha-unknown-linux-gnu ||
|| sparc || sparc-unknown-linux-gnu ||
|| hppa || sparc64-unknown-linux-gnu ||
|| mips || mips-unknown-linux-gnu ||
|| amd64 || x86_64-pc-linux-gnu ||


Las flags varían con la versión de gcc que estemos usando, es recomendable leerse el manual para conocerlas a fondo. Para gcc 3.x y Pentium4 por ejemplo podemos definir estas flags

CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"

Estas opciones se pueden configurar como variables de entorno válidas en la sesión actual o de forma permamente en el fichero /etc/make.conf

Make install

Al ejecutar este comando instalaremos los binarios que hemos compilado con el comando make anteriormente en las carpetas que por defecto tengan configuradas las fuentes como objetivo o las que le hayamos sumistrado mediante las opciones del script configure. Hasta este punto las instalación puede que se haya podido hacer como usuario, pero si el programa intenta escribir en alguna carpeta para la que no tiene permiso nos responderá con un "permiso denegado", por lo que deberemos cambiar a root para instalar los binarios o cambiar la ruta de instalación de éstos con el script configure.

En algunos casos estos pasos que hemos definido se automatizan con un sólo script(a veces situado en una carpeta llamada install), pero creo que es importante saber que va a hacer el script en caso de que tengamos que corregir algún fallo o configurar el programa de una forma característica.
[editar]

2 opiniones

Preguntas.

Por favor le ruego mi disculpas y es que necesito saber si para comenzar el linux se debe tener un programa especial en computadora que se debe hacer como se aplica cual seria el programa y si con mi desconocimiento en esto lo ouedo aolicar yo o debo buscar apoyo en otra persona que tenga mas conocimiento. Gracias por su atencion y disculpe por favor.
Instalacion de programas en linux.

Me parece una excelente guia.

Cursos gratis relacionados con 'Instalación de programas en Linux'

Algunas nociones sobre instalación de programas, el kernel y módulos en Linux que os harán... Más »
Manual Compacto para nuevos usuarios.
Un exhaustivo conjunto de ensayos y artículos que recorren la década de 1990 y los... Más »
Para mi tanto los hackmeetings como los hacklabs representan una interesantísima y fructífera tensión-interacción entre... Más »
Para proteger nuestra navegación y filtrar la publicidad disponemos en el mundo windows de los... Más »

Autor y licencia de 'Instalación de programas en Linux'


Curso gratis de Nautopia.net. Extraido de: http://www.nautopia.net CopyLeft
Debe reconocer los créditos de la obra de la manera especificada por el autor o el licenciador.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.