[C con Clase] Libreria estática con errores de enlazado.

Mauro Camerini mcam_7c6 en hotmail.com
Mar Jun 26 02:10:11 CEST 2007


Hola. Yo escribí una libreria estática en C usando solo las librerias 
estándar y uso como compilador el GCC de Mingw para Windows.

La libreria ya la compile de la siguiente forma:

  gcc.exe -c -o o\bm_error.o bm_error.c
  gcc.exe -c -o o\bm_basics.o bm_basics.c
  gcc.exe -c -o o\bm_valid.o bm_valid.c
  gcc.exe -c -o o\bm_memio.o bm_memio.c

  ar.exe rcs a\bmlib.a o\bm_error.o o\bm_basics.o o\bm_valid.o o\bm_memio.o

  ranlib.exe a\bmlib.a

Este proceso sale perfecto, el problema se origina cuando creo un programa 
que la utilize. El linker no puede enlazar las funciones de la libreria con 
el programa, que se definen en bmlib.h y que el único fichero fuente del 
programa incluye.
Para compilar el programa hize:

  gcc.exe test1.c -o test1.exe -I %C_INCLUDE% -L %C_LIB% -L a

Y como salida del gcc obtengo que no se pudieron enlazar ninguna de las 
funciones.

Por favor, si sabes o intuis cuál es el error, hacemelo saber, porque la 
libreria ya esta terminada y quería empezar con la etapa de debugging, cosa 
imposible de realizar si no puedo crear programas de prueba para encontrar 
los errores.

Muchas gracias.

PD: Mi intención es compilarla y hacer linkeaje al linkear el programa que 
la utilize, que es lo que no consigo. Compilando y enlazando el programa y 
la libreria como un todo, funciona perfectamente.

_________________________________________________________________
Sabe más sobre la próxima generación del MSN Messenger. 
http://imagine-msn.com/minisites/messenger/default.aspx?locale=es-ar





Más información sobre la lista de distribución Cconclase