On Thu, Apr 04, 2002 at 10:13:32AM -0300, Martin Doval wrote:
> Probe como me dijiste con Console Aplication y me da
> el siguiente mensaje
>
> ...
> g++.exe "prueba.o" -o "C:\c\prueba.exe"
> -L"C:\Dev-C++\lib" -L"C:\Dev-C++\lib\liballeg.a"
> -I"C:\Dev-C++\include" -I"C:\Dev-C++\include\g++-3"
> -I"C:\Dev-C++\include" -s
> prueba.o(.text+0x25):prueba.cpp: undefined reference
> to `install_allegro'
Los undefined references se dan en la fase de enlazado cuando el
compilador no encuentra cierta función usada por tu programa. En este
caso el problema es que no encuentra la librería liballeg.a. Pero está
en la línea de comando. ¿Cuál es el problema? El parámetro -L indica
unicamente rutas/directorios donde están los ficheros de librería.
Esa línea debería ser algo así:
g++.exe "prueba.o" -o "C:\c\prueba.exe" -L"C:\Dev-C++\lib" -lalleg
-I"C:\Dev-C++\include" -I"C:\Dev-C++\include\g++-3"
-I"C:\Dev-C++\include" -s
El parámetro -l se usa para indicar la librería que quieres enlazar,
sin el "lib" por delante ni el ".a" por detrás. Verifica otra vez las
opciones de librerías de tu entorno porque pareces estar confundiendo
directorios de librerías con las propias librerías.
--
Grzegorz Adam Hankiewicz gradha@... http://gradha.infierno.org/