Automake y Autoconf

Haciendo compatible una aplicación con libovc

Para ello introducir libovc dentro de la aplicación, se recomienda un enlace soft.

Luego modificar configure.ac para que haga ac_libovc_convenience o ac_libovc_installable añadiendo

AC_LIBOVC_CONVENIENCE(rutaalibovc_o_vaciopara_libovc)
AC_SUBST(LIBOVC)
AC_SUBST(OVCINCL)

o

AC_LIBOVC_INSTALLABLE
AC_SUBST(LIBOVC)
AC_SUBST(OVCINCL)

Si se añade

AC_CONFIG_SUBDIRS(libovc)

antes de las lineas anteriores, el programa recompilará esa carpeta, cosa que interesa

ejecutar el libovclizador

libovc/bin/libovclize

o si está instalado

libovclize

Proyecto actualizado. Libreria Funciona Multiplataforma.

Acabo de actualizar el SVN con los ultimos cambios. He conseguido hacer que el programa se ejecute tanto en linux como en windows de manera automatica ejecutando compile.sh.

Hemos tenido bastantes problemas, por lo que voy a dejar aqui una nota para todos aquellos que quieran desarrollar con libtool. Por lo visto bajo windows no se puede añadir en la sección xxx_la_LIBADD nada estaticamente, ya que se marea, el truco, y esto ya lo he dicho en otro momento, está en añadir los fuentes directamente.

Etapa 3. Carga de librerías dinámicas en tiempo de ejecución. (Solo linux)

Vamos a explicar como se realizan cargas de librerías dinámicas con libtool y la librería ltdl, en este tutorial nos vamos a saltar el paso de cargar con dlopen y dlclose los módulos, pues consideramos que es demasiado mono-sistema y que no aporta demasiado al tutorial ya que con la librería ltdl abstraemos todas esas funciones. Si está interesado en dlopen sin la librería ltdl puede encontrar información en [3] c++ dlopen mini howto.

Se puede descargar el resultado de este tutorial en forja tutorial3.tar.gz(actualizado)

Desarrollando un creador de modulos.

Estamos desarrollando un script que permita la creación de una estructura para desarrollar modulos de tal manera que interactivamente te pida ciertos datos y el te genere una estructura con los ficheros de cabecera(.h) y los ficheros fuente (.cc) ademas de todo lo necesario para que el proyecto se pueda compilar (autoconf, automake y libovc).

Etapa 1. Creación de un proyecto con autotools.

Primero vamos a crear un pequeño proyecto que compile con autotools y que sea capaz de mostrar un pequeño mensaje por pantalla y cargar el fichero config.h de manera directa.

Se puede descargar el ejemplo de la siguiente dirección: forja tutorial1.tar.gz

Autobook, el libro para entender autoconf, automake, libtools y carga de librerias dinamicas

Buscando un libro que me solucionara alguna duda sobre libtool y su uso para desarrollo multiplataforma, he encontrado el siguiente libro: Autoconf, Automake y Libtool , podemos también pedir una copia en Amazon.(GNU Autoconf, Automake, and Libtool (Circle)), los autores del libro son Gary V. Vaughan,Ben Elliston, Tom Tromey y Ian Lance Taylor, a los que el equipo de OpenVirtualContainer.org damos las gracias.

11 de Diciembre de 2007

En la reunión de hoy se han tocado los siguientes puntos.
- Explicación del preanálisis realizado.
- Nombre de las librerías
- Entorno de desarrollo
- Automake & autoconf
- Tareas asignadas.

Automake y Autoconf.

Estamos estudiando como hacer librerías multiplataforma y parece que la clave está en Automake, autoconf y libtool, os dejo estos enlaces por si tenéis algún interés en este tema.

Using Automake and Autoconf with C++
Building C/C++ libraries with Automake and Autoconf
Using C/C++ libraries with Automake and Autoconf

Distribuir contenido