# Instalación de &kdevelop;

En este capítulo se discutirán los pasos necesarios para compilar e instalar el IDE &kdevelop;:

- Cómo obtener &kdevelop; se concentra principalmente en la descarga del código fuente más reciente de &kdevelop; desde su repositorio svn.

- Requisitos de &kdevelop; lista los programas y bibliotecas que necesitará tener instalados para compilar el IDE con éxito.

- Compilación e instalación de &kdevelop; le guía a través del proceso de compilación e instalación de la aplicación.

- Cómo obtener la documentación de la API de &kdevelop; le enseña qué es una API y cómo obtener esta útil herramienta para navegar a través del código fuente de &kdevelop;.

## Cómo obtener &kdevelop;

El binario de &kdevelop; está disponible en muchas distribuciones de &Linux;, como SuSE, RedHat y otras. Estos binarios están empaquetados en algún formato adecuado (principalmente RPM) para que su instalación sea fácil. Para instalarlo, siga las instrucciones genéricas que le proporcione su distribución.

Tabién puede obtener el código fuente de &kdevelop;, compilarlo e instalarlo usted mismo. Este código fuente se puede encontrar en la página del proyecto, http://www.kdevelop.org, o en el servidor ftp de &kde;.

### Obtener versiones diarias de &kdevelop; a partir del svn

Si desea estar al día del desarrollo actual, dispone de versiones descargadas anónimamente del repositorio svn.

El nombre del módulo es kdevelop en `svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kdevelop`.

#### Descarga inicial del svn

Para obtener una versión inicial de &kdevelop;, debe descargarla de un svn anónimo. Para realizar esta operación (llamadacheckout) siga los siguientes pasos.

Asumiremos que quiere tener su copia de &kdevelop; en la subcarpeta `kde3src` de su carpeta personal (`~`).

- # Crear la carpeta de destino, si es necesario:
- `~>` `mkdir kde3src`
- `~>` `cd kde3src`
- `~/kde3src>` `svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kdevelop`
- `~/kde3src>` `cd kdevelop`

Tras descargar con éxito su copia de &kdevelop; puede mantenerla al día de los cambios realizados en ella usando el procedimiento de actualización que se muestra en la siguiente sección.

No sobrecargue el servidor. Por favor, no haga un «checkout» cada vez que quiera actualizar su &kdevelop;. Use el comando «svn update» para este propósito.

Ahora debe compilar su versión de &kdevelop; como se muestra en la sección Compilación e instalación de &kdevelop;.

#### Actualización de su copia del svn

Tras descargar por primera vez (y compilar con éxito) &kdevelop; del repositorio tal y como se ha mostrado, tal vez quiera mantener su copia al día para obtener todos los parches que vayan siendo añadidos. Para ello siga los pasos siguientes (de nuevo asumiremos que tiene su copia de &kdevelop; en la carpeta `kde3src`).

Note el uso del comando `up` (o update) en lugar de `co` (que significa checkout).

- `~>` `cd kde3src`
- `~/kde3src>` `cd kdevelop`
- `~/kde3src>` `svn up`

Eche un vistazo a los mensajes que genera svn durante el proceso de actualización. Los pasos exactos durante la secuencia de compilación dependerán de ello.

Ahora puede compilar una nueva versión de &kdevelop; como se muestra en el capítulo Consideraciones sobre la compilación especial de svn.

## Requisitos de &kdevelop;

Para poder compilar y usar con éxito &kdevelop; necesita los siguientes programas y bibliotecas. Están disponibles como paquetes de su distribución en la mayoría de las plataformas, por lo que se pueden instalar fácilmente.

## Necesario:

- gcc/g++ ≥ 2.95.3 (o compatible)

  Disponible en gcc.gnu.org

- &GNU; make (o compatible)

  Disponible en www.gnu.org/software/make

- &perl; 5.004 (o superior)

  Disponible en www.perl.com

- autoconf ≥ 2.52 (o superior)

  Disponible en www.gnu.org/software/autoconf

- automake ≥ 1.6 (o superior)

  Disponible en www.gnu.org/software/automake

- flex 2.5.4 (o superior)

  Disponible en www.gnu.org/software/flex

- &Qt; ≥ 3.3.0 (o superior)

  Disponible en www.trolltech.com/products/qt

- KDE ≥ 3.4.0 (o superior)

  Disponible en www.kde.org

## Opcional:

- La herramienta de navegación a través del código fuente ctags, disponible en http://ctags.sourceforge.net, que le permite acceder de forma rápida a las declaraciones y definiciones mediante varios clics de ratón sobre sus nombres en la ventana del editor.

- dot, un compilador de lenguaje de gráficos, disponible en http:/www.graphviz.org. Necesita esta herramienta junto a &doxygen; si quiere mostrar gráficamente la relación existente entre sus clases (lo que es muy recomendable).

- La herramienta de documentación &doxygen;, disponible en http://www.doxygen.org, si quiere generar documentación consisa y potente del API de su proyecto.

- valgrind disponible en http://developer.kde.org/~sewardj/ le ayuda a encontrar problemas de gestión de memoria en sus aplicaciones.

- svn, disponible en http://subversion.tigris.org, si quiere usar el sistema de versiones svn.

- Cualquier otro compilador o herramienta necesaria para programar en otro lenguaje o plataforma distinto de C++ y &kde;, o para algún fin especial.

1. Hasta cierto punto, puede eludir la necesidad de tener &autoconf; ≥ 2.52 y &automake; ≥ 1.6. Para ello, elimine la carpeta `admin` en la carpeta de instalación de &kdevelop; y escriba

   - `(su carpeta de kdevelop)>` `ln -s $KDEDIR/share/apps/kdelibs/admin admin`

   en la consola. Esto hace que &kdevelop; use las preferencias generales de la carpeta `admin` de &kde;.

2. Tenga cuidado de no mezclar distintas versiones de &Qt;. Enlace siempre &kdevelop; con la misma versión de &Qt; con que haya sido compilada su biblioteca &kde;. En caso contrario es muy probable que experimente comportamientos muy extraños.

## Compilación e instalación de &kdevelop;

Una vez que haya complido todos los requisitos, estará listo para compilar e instalar &kdevelop;. Este apéndice trata de los pasos necesarios para conseguirlo.

- Pasos preliminares le enseña a configurar un entorno correcto.

- Compilación de &kdevelop; trata sobre cómo obtener el código fuente de &kdevelop; del svn, cómo prepararlo para el proceso de instalación, y finalmente muestra los pasos necesarios para compilar e instalar &kdevelop;.

- Algunas notas sobre las opciones deconfigure le enseña a ejecutar &kdevelop; si ha sido instalado en una carpeta distinta a la de &kde;.

### Pasos preliminares

Antes de iniciar la secuencia de compilación debe asegurarse de que el sistema «make» puede acceder a todas las bibliotecas y herramientas necesarias. Para ello debe ajustar correctamente algunas variables de entorno. Los pasos reales a realizar dependerán del intérprete de comandos que esté usando.

Para evitar el tener que teclear cada vez todas las sentencias que hacen falta para ajustar las variables de entorno necesarias cuando quiera compilar, debería colocarlas en su archivo `.bashrc` o `.cshrc`. De este modo, las variables de entorno se ajustarán correctamente cada vez que inicie el intérprete de comandos.

#### Configuración del entorno para el intérprete bash

Si usa el intérprete bash, añada las siguientes líneas:

- `export KDEDIR=`(ruta a su instalación de KDE)
- `export QTDIR=`(ruta a su biblioteca Qt)
- `export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH`
- `export LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH`
- `export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH`

#### Configuración del entorno para el intérprete tcsh

Si está usando el intérprete tcsh, añada las siguientes líneas:

- `setenv KDEDIR` (ruta a su instalación de KDE)
- `setenv QTDIR` (ruta a su biblioteca Qt)
- `setenv LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH`
- `setenv LIBRARY_PATH $QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH`
- `setenv PATH $QTDIR/bin:$KDEDIR/bin:$PATH`

### Compilar &kdevelop;

En la siguiente sección supondremos que ha colocado el código fuente de &kdevelop; en la carpeta `~/kde3src/kdevelop`.

#### Consideraciones especiales sobre la compilación de svn

En el caso de que utilice una versión de &kdevelop; descargada directamente del repositorio svn, los pasos iniciales para su compilación dependen de si realizó un «checkout» completo y de si solo actualizó el código fuente.

Tras hacer un «checkout» del svn

- Debe inicializar el sistema «make» tras realizar un «checkout». Esto también será de aplicación cada vez que necesite empezar desde cero. Escriba:

  - `~/kde3src/kdevelop>` `make -f admin/Makefile.common svn-clean`

  y luego siga el resto de pasos siguientes.

  Necesita tener acceso al repositorio svn para la limpieza si hace falta reconstruir algunos archivos dañados o que no existan en su copia local.

  El comando `svn-clean` eliminará cada archivo de la carpeta que no esté en el svn. Asegúrese de hacer una copia de seguridad de cualquier información valiosa antes de ejecutar este comando de limpieza.

Tras una actualización svn

- El siguiente paso depende de la salida de la secuencia de actualización svn. Si ha obtenido como resultado (puede existir una «U» o una «P» como marca en la columna de la izquierda, ambas indicando que el archivo ha sido modificado) algo como esto:

      U /ruta_a_alguna_carpeta/Makefile.am

  o si realizó un «checkout» completo, debe introducir:

  - `~/kde3src/kdevelop>` `make -f Makefile.svn`

  antes de proceder con todos los pasos siguientes.

#### Secuencia de comandos `make` básica

Una vez que el sistema «make» básico haya sido ajustado, debe decidir qué tipo de sistema &kdevelop; quiere usar. Esto se hace en el siguiente paso de configuración, que construye los `Makefile`s reales que usará el comando `make`.

Puede omitir la opción `--prefix` en las siguientes líneas de comando para `configure` si quiere que &kdevelop; se instale en la carpeta predeterminada de &kde;. Consulte el capítulo Algunas notas sobre las opciones de «configure».

Una versión compilada para ser depurada

- Si quiere seguir el rastro de lo que hace su aplicación &kdevelop; cuando esté en ejecución, debe construir una versión compilada para ser depurada. Ejecute el siguiente comando `configure` para ello:

  - `~/kde3src/kdevelop>` `./configure --enable-debug=full --prefix=`(donde está su kde3)

Una versión compilada para ser liberada

- Si solo quiere usar &kdevelop; por sí mismo, bastará con una versión compilada para ser liberada (que es más pequeña y se ejecuta más rápidamente). El comando `configure` hace esto de forma predeterminada.

  - `~/kde3src/kdevelop>` `./configure --prefix=`(donde está su kde3)

  Si quiere construir su propia documentación del API de &kdevelop;, debería incluir una opción adicional en el comando `configure`:

  - `~/kde3src/kdevelop>` `./configure --`(opciones como las anteriores) `\`
  - `--with-kdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/kdelibs-apidocs`

Make e instalación de &kdevelop;

- `configure` comprobará el sistema y creará algunos archivos `Makefile` según lo que encuentre. El comando `make` usará el `Makefile` principal de forma predeterminada. De este modo

  - `~/kde3src/kdevelop>` `make`

  es suficiente. Si es necesario, obtenga ahora privilegios de usuario root con el comando

  - `~/kde3src/kdevelop>` `su`

  e introduzca la contraseña del usuario root. Luego, instale la aplicación:

  - `~/kde3src/kdevelop>` `make install`

  Eso es todo. Si ha instalado &kdevelop; en la carpeta predeterminada de &kde; podrá ejecutar ahora el IDE. En caso contrario, necesitará algunos pasos adicionales como se muestra más adelante en la sección Carpeta de instalación no predeterminada.

  De hecho, normalmente habrá tres aplicaciones instaladas basadas en &kdevelop;:

  - El IDE de &kdevelop; — el lugar donde normalmente trabajará.

  - El navegador de documentación independiente del Asistente de &kdevelop; — aisla todas las potentes utilidades de documentación del IDE &kdevelop; en una herramienta separada. Esto resulta útil cuando necesita buscar determinada documentación sobre programación pero no quiere iniciar todo el IDE.

  - El Diseñador de &kdevelop; — Amplía el «Diseñador de interfaces de usuario de &Qt;» con elementos específicos de &kde; y se integra perfectamente en el IDE de &kdevelop;.

### Algunas notas sobre las opciones de `configure`

#### Carpeta de instalación no predeterminada

Por defecto, `configure` prepara el IDE para que se instale en la carpeta predeterminada de &kde;. Esto es necesario porque &kdevelop; asume que puede acceder directamente a ciertas herramientas y partes que residen ahí. Si quiere usar su propia carpeta de instalación, debe indicárselo a `configure` con la opción `--prefix`.

- `~/kde3src/kdevelop>` `./configure --prefix=`(donde está su kde3)

Existe un inconveniente si hace esto: debe proporcionar a &kdevelop; un medio para acceder a las herramientas y partes necesarias existentes en la carpeta de &kde; cuando esté funcionando (puede usar el IDE sin hacer esto, pero no dispondrá de todas sus capacidades).

Inicie un intérprete de comandos y ejecute lo siguiente antes de iniciar &kdevelop; en la línea de introducción de comandos:

Tenga cuidado en usar la forma plural: es `KDEDIRS`, no `KDEDIR`)

- `~>` `export KDEDIRS=/usr/local/kde:/opt/kde3`
- `~>` `kbuildsycoca`
- (Ahora puede iniciar &kdevelop;)
- `~>` `kdevelop`

- La variable de entorno `KDEDIRS` debe estar asignada a la lista de carpetas del &kde; activo de su sistema. Usamos
- `/usr/local/kde`:`/opt/kde3`
- solo como ejemplo.
- La carpeta `/usr/local/kde` puede contener, por ejemplo, una versión incompleta de &kde; que haya compilado para propósitos de depuración, y la carpeta `/opt/kde3` puede contener, adicionalmente, la versión estándar de&kde; que proporciona su distribución y que usa en el trabajo diario.

En un intérprete tcsh debe establecer las variables de entorno usando:

- `~>` `setenv KDEDIRS /usr/local/kde:/opt/kde3`

El comando `kbuildsycoca` (construir la caché de control del sistema) busca bibliotecas y cachés, sus ubicaciones y versiones, de modo que &kdevelop; pueda encontrarlas. El inconveniente es que tarda cierto tiempo en ejecutarse (y que necesita ejecutarse cada vez que llama al intérprete de comandos para iniciar &kdevelop; desde una carpeta no predeterminada). Es posible que quiera añadir los comandos anteriores a un guión del intérprete de comandos para eliminar la necesidad de tener que escribirlos una y otra vez.

También puede poner esas líneas en su archivo `.bashrc` o `.cshrc`, pero esto no es recomendable, ya que `kbuildsycoca` se ejecutará cada vez que inicie el intérprete de comandos.

El comando `kbuildsycoca` no se ejecuta como usuario «root». Debe llamarlo como usuario normal (pero tampoco es una idea muy buena realizar el desarrollo de software como «root»).

## Cómo obtener la documentación del API de &kdevelop;

API significa interfaz del programa de aplicación. Relmente el API contiene una serie de descripciones (como convenciones de llamada) mediante las que un programa de aplicación puede acceder al sistema operativo y a otros servicios. En nuestro contexto se ha adoptado una definición más amplia: el API de una aplicación &Qt; o de &kde; es un extracto de las interfaces de las clases y de los métodos, una sinopsis para usar como un diccionario para navegar a través del código fuente.

Existe una versión del API más reciente disponible en la web de KDevelop. Se actualiza automáticamente cada 24 horas, de modo que siempre esté al día.

Esta versión se usa mejor en modo de solo lectura a través de Internet. Si no dispone de acceso permanente a Internet también puede construir su propia documentación del API a partir del código fuente de &kdevelop;. Para ello debe de indicar al sistema «automake» dónde encontrar el API de KDELIBS en su sistema. Esto se consigue con la opción especial `--with-kdelibsdoxy-dir` en el comando `configure` cuando prepare la compilación del código fuente de &kdevelop;:

- `~/kde3src/kdevelop>` `./configure --`(opciones usuales)`\`
- `--with-kdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/kdelibs-apidocs`

(`make` sustituirá la variable global `$KDEDIR` por la dirección de la carpeta real de &kde; guardada en ella). Ejecute luego el comando `make` como siempre. Una vez construido el IDE &kdevelop; también tendrá la oportunidad de construir su API. Para ello debe ejecutar

- `~/kde3src/kdevelop>` `make apidocs`

Esto creará un archivo `Doxyfile` en la carpeta principal de &kdevelop; que luego será procesado por la aplicación Doxygen para generar un buen número de archivos `.html` con la documentación del API. Cuando este a menudo largo proceso (puede durar más de una hora en un sistema lento) llegue a su fin, tendrá que instalar la documentación del API del mismo modo que tiene que instalar el IDE &kdevelop;. Si es necesario, obtenga permisos de superusuario con

- `~/kde3src/kdevelop>` `su`

e introduzca la contraseña del usuario root. Luego, instale los archivos del API:

- `~/kde3src/kdevelop>` `make install-apidox`

Cuando haya terminado `make` le informará de la carpeta donde encontrará el contenido de la documentación del API. Apunte esa dirección, ya que podrá usarla desde &konqueror; al igual que desde &kdevelop;, en el caso de que haya configurado el código fuente de &kdevelop; como un proyecto sobre el que trabajar.

Es muy probable que vea un buen número de mensajes de aviso y/o de error mientras Doxygen genera la documentación del API. Puede ignorarlos, ya que solo tienen interés para los desarrolladores de &kdevelop;. Si la generación de la documentación del API termina con éxito, podrá utilizar los archivos `.html` que la contienen.