Sophie

Sophie

distrib > Mandriva > 10.0 > i586 > by-pkgid > 48e6004f7274ccc2095a5ab8f2460dd2 > files > 82

mandrake-doc-es-10.0-5.1.100mdk.noarch.rpm

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Configuración</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.0"><link rel="home" href="index.html" title="Guía de Referencia"><link rel="up" href="install-free-software-chapter.html" title="Capítulo 12. Compilando e instalando
  software libre"><link rel="previous" href="decompression.html" title="Descompresión"><link rel="next" href="install-free-compilation.html" title="Compilación"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Configuración</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="decompression.html">Anterior</a> </td><th width="60%" align="center">Capítulo 12. Compilando e instalando
  software libre</th><td width="20%" align="right"> <a accesskey="n" href="install-free-compilation.html">Siguiente</a></td></tr></table><hr></div><div class="sect1" lang="es"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-free-config"></a>Configuración</h2></div></div><div></div></div><p><a name="BId-install-free-software-chapter-pa64"></a>Por
   razones puramente técnicas, el hecho de disponer de los fuentes es
   la posibilidad de <a name="BId-install-free-software-chapter-gt8" href="glossary.html#term-porting"><i class="glossterm">portar</i></a> el
   software. Un software libre desarrollado para un sistema <span class="application">UNIX</span>
   se puede usar en todos los sistemas <span class="application">UNIX</span> existentes (sean
   libres o propietarios), con pocas modificaciones o ninguna. Esto
   implica una configuración del software justo antes de la
   compilación.</p><p><a name="BId-install-free-software-chapter-pa65"></a>Existen muchos
   sistemas de configuración, Usted tiene que usar el que el autor del
   software quiera (a veces, se necesitan varios) Por lo general,
   Usted puede:</p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-install-free-software-chapter-pa66"></a>usar <span class="application">AutoConf</span>
     (consulte la sección <a href="install-free-config.html#autoconf" title="Autoconf">“Autoconf”</a>) si existe un
     fichero denominado <tt class="filename">configure</tt> en el
     directorio padre de la distribución.</p></li><li><p><a name="BId-install-free-software-chapter-pa67"></a>usar <span class="application">imake</span>
     (consulte la sección <a href="install-free-config.html#imake" title="Imake">“Imake”</a>) si existe un
     fichero denominado <tt class="filename">Imakefile</tt> en el
     directorio padre de la distribución.</p></li><li><p><a name="BId-install-free-software-chapter-pa68"></a>ejecutar un
     <a name="BId-install-free-software-chapter-gt9" href="glossary.html#term-script"><i class="glossterm">script</i></a> del shell, (por ejemplo,
     <tt class="filename">install.sh</tt>) según lo que diga el fichero
     <tt class="filename">INSTALL</tt> (o el fichero
     <tt class="filename">README</tt>)</p></li></ul></div><div class="sect2" lang="es"><div class="titlepage"><div><div><h3 class="title"><a name="autoconf"></a>Autoconf</h3></div></div><div></div></div><div class="sect3" lang="es"><div class="titlepage"><div><div><h4 class="title"><a name="id2561319"></a>Principio</h4></div></div><div></div></div><p><a name="BId-install-free-software-chapter-pa69"></a><span class="application">AutoConf</span>
     permite configurar el software correctamente. Crea los ficheros
     necesarios para la compilación (por ejemplo, el fichero
     <tt class="filename">Makefile</tt>), y, a veces, cambia los fuentes
     directamente (como, por ejemplo, al usar un fichero
     <tt class="filename">config.h.in</tt>)</p><p><a name="BId-install-free-software-chapter-pa70"></a>El principio de
     <span class="application">AutoConf</span> es simple:</p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-install-free-software-chapter-pa71"></a>el programador del
       software sabe qué pruebas son necesarias para configurar su
       software (ejemplo: “<span class="quote">¿qué versión de esta o aquella <a name="BId-install-free-software-chapter-gt10" href="glossary.html#term-library"><i class="glossterm">biblioteca</i></a> usa</span>”?) Él
       las escribe, siguiendo una sintaxis precisa, en un fichero
       denominado <tt class="filename">configure.in</tt>.</p></li><li><p><a name="BId-install-free-software-chapter-pa72"></a>Él ejecuta
       <span class="application">AutoConf</span>, el cual genera un script de configuración
       denominado <tt class="filename">configure</tt> a partir del fichero
       denominado <tt class="filename">configure.in</tt>. Este script
       efectuará las pruebas necesarias cuando se configure el
       programa.</p></li><li><p><a name="BId-install-free-software-chapter-pa73"></a>El usuario final
       ejecuta el script, y <span class="application">AutoConf</span> se encarga de configurar
       todo lo que es necesario para la compilación.<a class="indexterm" name="BId-install-free-software-chapter-it4"></a></p></li></ul></div></div><div class="sect3" lang="es"><div class="titlepage"><div><div><h4 class="title"><a name="id2561494"></a>Ejemplo</h4></div></div><div></div></div><p><a name="BId-install-free-software-chapter-pa74"></a>Un ejemplo del uso
     de <span class="application">AutoConf</span>:</p><a name="BId-install-free-software-chapter-sc6"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ ./configure
loading cache ./config.cache
checking for gcc... gcc
checking whether the C compiler (gcc  ) works... yes
checking whether the C compiler (gcc  ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking for main in -lX11... yes
checking for main in -lXpm... yes
checking for main in -lguile... yes
checking for main in -lm... yes
checking for main in -lncurses... yes
checking how to run the C preprocessor... gcc -E
checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
checking for ANSI C header files... yes
checking for unistd.h... yes
checking for working const... yes
updating cache ./config.cache
creating ./config.status
creating lib/Makefile
creating src/Makefile
creating Makefile</pre></td></tr></table><p><a name="BId-install-free-software-chapter-pa75"></a>Para tener un mayor
     control de lo que genera <span><b class="command">configure</b></span>, se le
     pueden pasar algunas opciones por medio de la línea de comandos o
     variables de entorno. Por ejemplo:</p><a name="BId-install-free-software-chapter-sc7"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ ./configure --with-gcc --prefix=/opt/GNU</pre></td></tr></table><p><a name="BId-install-free-software-chapter-pa76"></a>o (con
     <span class="application">bash</span>):</p><a name="BId-install-free-software-chapter-sc8"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ export CC=`which gcc`
$ export CFLAGS=-O2
$ ./configure --with-gcc</pre></td></tr></table><p><a name="BId-install-free-software-chapter-pa77"></a>o:</p><a name="BId-install-free-software-chapter-sc9"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ CC=gcc CFLAGS=-O2 ./configure</pre></td></tr></table></div><div class="sect3" lang="es"><div class="titlepage"><div><div><h4 class="title"><a name="id2561619"></a>¿Qué pasa si... no
     funciona?</h4></div></div><div></div></div><p><a name="BId-install-free-software-chapter-pa78"></a>Un
     error típico del script <tt class="filename">configure</tt> es aquel
     del tipo <tt class="literal">configure: error: Cannot find library
     guile</tt> (configure: error: no se encuentra la biblioteca
     <tt class="filename">guile</tt>) (La mayoría de los errores del script
     <tt class="filename">configure</tt> lucen así).</p><p><a name="BId-install-free-software-chapter-pa79"></a>Esto significa que el script
     <tt class="filename">configure</tt> no pudo encontrar una biblioteca
     (<tt class="filename">guile</tt> en nuestro ejemplo). El principio es
     que el script <tt class="filename">configure</tt> compila un pequeño
     programa de prueba que usa esta biblioteca. Si la compilación de
     este programa no tiene éxito, no podrá compilar el software.
     Entonces ocurre un error.</p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-install-free-software-chapter-pa80"></a>Busque la razón
       del error examinando al final del fichero
       <tt class="filename">config.log</tt>, que contiene una traza de
       todos los pasos de configuración. El compilador de lenguaje
       <tt class="systemitem">C</tt> es suficientemente claro con sus mensajes de error.
       Eso lo ayudará a resolver el problema.</p></li><li><p><a name="BId-install-free-software-chapter-pa81"></a>Verifique que la
       biblioteca en cuestión esté instalada correctamente. Si no es
       así, puede correr <span><b class="command">/sbin/ldconfig</b></span>, borrar el
       fichero <tt class="filename">config.cache</tt> y volver a ejecutar
       el script <tt class="filename">configure</tt>. Si todavía sigue con
       problemas, intente volver a instalar la biblioteca (desde los
       fuentes o desde un fichero binario) Una forma eficiente de
       verificar la instalación es buscar el fichero que contiene los
       símbolos de la biblioteca, que siempre se denomina
       <tt class="option">lib&lt;nombre&gt;.so</tt>. Por ejemplo,
       
<a name="BId-install-free-software-chapter-sc10"></a></p><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ find / -name 'libguile*'</pre></td></tr></table><p>
       
       o, si no:
       
<a name="BId-install-free-software-chapter-sc11"></a></p><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ locate libguile</pre></td></tr></table><p>
      </p></li><li><p><a name="BId-install-free-software-chapter-pa82"></a>Verifique que el compilador puede acceder a la
       biblioteca. Eso significa que la misma se encuentra en algún
       directorio entre: <tt class="filename">/usr/lib</tt>,
       <tt class="filename">/lib</tt>, <tt class="filename">/usr/X11R6/lib</tt>
       (o entre aquellos especificados por la variable de entorno
       <tt class="varname">LD_LIBRARY_PATH</tt>, explicada en <a href="install-free-compilation.html#it-does-not-work" title="¿Qué pasa si... no
    funciona?">“¿Qué pasa si... no
    funciona?”</a> número <a href="install-free-compilation.html#LD-LIBRARY-PATH">b</a>). Verifique que este fichero es una
       biblioteca ingresando <span><b class="command">file
       libguile.so</b></span>.</p></li><li><p><a name="BId-install-free-software-chapter-pa83"></a>Verifique que los ficheros de encabezado
       correspondientes a la biblioteca se encuentran en el lugar
       adecuado (generalmente, <tt class="filename">/usr/include</tt> o
       <tt class="filename">/usr/local/include</tt> o
       <tt class="filename">/usr/X11R6/include</tt>) Si Usted no sabe
       cuales son los ficheros de encabezado necesarios, verifique que
       instaló la versión de desarrollo de la biblioteca en cuestión
       (por ejemplo, <tt class="filename">libgtk+2.0-devel</tt> en vez de
       <tt class="filename">libgtk+2.0</tt>) La versión de desarrollo de la
       biblioteca proporciona los ficheros “<span class="quote">include</span>”
       (incluir) necesarios para compilar un software usando esta
       biblioteca.</p></li><li><p><a name="BId-install-free-software-chapter-pa84"></a>Verifique que Usted tiene espacio suficiente en el
       disco (el script <tt class="filename">configure</tt> necesita de
       algo de espacio para ficheros temporales). Use el comando
       <span><b class="command">df -h</b></span> para visualizar las particiones de su
       sistema, y note las particiones llenas o casi llenas.</p></li></ul></div><p><a name="BId-install-free-software-chapter-pa85"></a>Si Usted no
     comprende los mensajes de error almacenados en el fichero
     <tt class="filename">config.log</tt>, no dude en pedir ayuda a la
     comunidad de software libre (consulte la sección <a href="install-free-support.html#support" title="Soporte técnico">“Soporte técnico”</a>)</p><p><a name="BId-install-free-software-chapter-pa86"></a>Es más, verifique si
     <tt class="filename">configure</tt> responde 100% de
     <tt class="literal">No</tt> o si responde <tt class="literal">No</tt> y Usted
     está seguro que la biblioteca existe (por ejemplo, sería muy
     extraño que no exista la biblioteca <tt class="filename">curses</tt>
     en su sistema) Si ese es el caso, ¡probablemente esté mal
     configurada la variable
     <tt class="varname">LD_LIBRARY_PATH</tt>!</p></div></div><div class="sect2" lang="es"><div class="titlepage"><div><div><h3 class="title"><a name="imake"></a>Imake</h3></div></div><div></div></div><p><a name="BId-install-free-software-chapter-pa87"></a><span class="application">imake</span> le
    permite configurar un software libre creando un fichero
    <tt class="filename">Makefile</tt> a partir de reglas simples. Estas
    reglas determinan los ficheros necesarios para compilar el fichero
    binario, y luego <span class="application">imake</span> genera el fichero
    <tt class="filename">Imakefile</tt> correspondiente. Estas reglas se
    especifican en un fichero denominado
    <tt class="filename">Imakefile</tt>.</p><p><a name="BId-install-free-software-chapter-pa88"></a>Lo
    que tiene interesante <span class="application">imake</span> es que usa información
    <i class="glossterm"><a name="BId-install-free-software-chapter-gt11"></a>dependiente
    del sitio</i> (dependiente de la arquitectura). Esto es
    muy útil para las aplicaciones que usan <span class="application">X Window System</span>. Pero
    <span class="application">imake</span> también se usa para muchas otras aplicaciones.</p><p><a name="BId-install-free-software-chapter-pa89"></a>La forma más fácil de
    usar <span class="application">imake</span>, es entrar en el directorio principal del
    archivo descomprimido, y luego correr el script
    <tt class="filename">xmkmf</tt>, que llama al programa
    <span class="application">imake</span>:</p><a name="BId-install-free-software-chapter-sc12"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ xmkmf -a
$ imake -DUseInstalled -I/usr/X11R6/lib/X11/config
$ make Makefiles</pre></td></tr></table><p><a name="BId-install-free-software-chapter-pa90"></a>Si el sitio no está
    instalado correctamente, ¡debe recompilar e instalar
    <span class="application">X11R6</span>!</p></div><div class="sect2" lang="es"><div class="titlepage"><div><div><h3 class="title"><a name="id2562197"></a>Varios scripts del shell</h3></div></div><div></div></div><p><a name="BId-install-free-software-chapter-pa91"></a>Para más información
    lea los ficheros <tt class="filename">INSTALL</tt> o
    <tt class="filename">README</tt>. Por lo general, Usted tiene que
    ejecutar un fichero del tipo <tt class="filename">install.sh</tt> o
    <tt class="filename">configure.sh</tt>. Entonces, o el script de
    instalación será silencioso (y determinará lo que necesita por sí
    solo), o le preguntará información sobre su sistema (por ejemplo,
    las rutas)</p><p><a name="BId-install-free-software-chapter-pa92"></a>Si Usted no llega a
    determinar el fichero que tiene que ejecutar, puede ingresar
    <tt class="literal">./</tt> (bajo <span class="application">bash</span>), y luego presionar dos
    veces la tecla <span><b class="keycap">TAB</b></span> (tecla del tabulador)
    <span class="application">bash</span> completará automáticamente el nombre de un fichero
    ejecutable en el directorio corriente (por lo tanto, un posible
    script de configuración) En caso de que varios ficheros se puedan
    ejecutar, le dará una lista. Solo debe elegir el fichero
    correcto.</p><p><a name="BId-install-free-software-chapter-pa93"></a>Un caso particular es
    la instalación de módulos <span class="application">perl</span> (aunque no solamente de
    estos) La instalación de tales módulos se hace mediante la
    ejecución de un script de configuración, el cual se encuentra
    escrito en <span class="application">perl</span>. Por lo general, el comando a ejecutar
    es:</p><a name="BId-install-free-software-chapter-sc13"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ perl Makefile.PL</pre></td></tr></table></div><div class="sect2" lang="es"><div class="titlepage"><div><div><h3 class="title"><a name="id2562336"></a>Alternativas</h3></div></div><div></div></div><p><a name="BId-install-free-software-chapter-pa94"></a>Algunas
    distribuciones de software libre están mal organizadas,
    especialmente durante las primeras etapas de desarrollo (¡pero se
    previene al usuario!) En las mismas se necesita retocar “<span class="quote">a
    mano</span>” algunos ficheros de configuración. Por lo general,
    estos ficheros son un fichero <tt class="filename">Makefile</tt> (ver
    la sección <a href="install-free-compilation.html#make" title="Make">“Make”</a>) y un fichero
    <tt class="filename">config.h</tt> (este nombre sólo es convencional)
    Como siempre, ¡lea los ficheros <tt class="filename">README</tt> e
    <tt class="filename">INSTALL</tt>!</p><p><a name="BId-install-free-software-chapter-pa95"></a>No recomendamos que
    estas manipulaciones sean hechas por usuarios que no sepan lo que
    están haciendo. Esto necesita de conocimientos reales y la
    motivación necesaria para tener éxito. Pero, la práctica lleva a
    la perfección.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="decompression.html">Anterior</a> </td><td width="20%" align="center"><a accesskey="u" href="install-free-software-chapter.html">Subir</a></td><td width="40%" align="right"> <a accesskey="n" href="install-free-compilation.html">Siguiente</a></td></tr><tr><td width="40%" align="left" valign="top">Descompresión </td><td width="20%" align="center"><a accesskey="h" href="index.html">Inicio</a></td><td width="40%" align="right" valign="top"> Compilación</td></tr></table></div></body></html>