PDA

View Full Version : Aiutatemi. Inserire la libreria allegro in minGW.


LucaDP80
02-07-2011, 02:08
Salve, spero vivamente che qualcuno mi possa dare una mano.
Sto cercando d'inserire la libreria allegro, Il compilatore è minGW .
No riesco a capire come fare, sto impazzendo da vari giorni.

Il mio scopo finale è usare NetBeans, riesco a farlo funzionare con le librerie standard, riesco anche a fargli riconoscere in parte allegro, ma la compilazione va in errore ( Anche se il codice è:
#include <stdio.h>
#include <cstdlib>
#include <allegro.h>



int main (void)
{

return 0;
}
)

Quindi il problema sta nel fatto che non riesco ad installare completamente e correttamente la libreria. L'errore Scompare se tolgo la libreria allegro.h

P.s
L'errore è :
c:/mingw/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../libmingw32.a(main.o):main.c:(.text+0xd2): undefined reference to `WinMain@16'
make[1]: Leaving directory `/f/BeansProjects/IlGioco'
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/MinGW_1-Windows/ilgioco.exe] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2

BUILD FAILED (exit value 2, total time: 1s)

P.p.s
Spero che qualcuno possa postare una spiegazione generale su come istallare da zero la libreria.

AngeL)
02-07-2011, 10:13
La libreria è installata correttamente, l'errore è qui (http://alleg.sourceforge.net/latestdocs/en/faq.html#I_get_an_error_about_a_missing_WinMain___or_main___function_) ;)

Qualche info in più qui (http://alleg.sourceforge.net/latestdocs/en/alleg000.html#END_OF_MAIN); ricorda di NON mettere il punto e virgola dopo END_OF_MAIN().

LucaDP80
02-07-2011, 14:19
Ti ringrazio per la tua disponibilità.

Ho provato a modificare il codice per verificare se dipendesse da esso o dalla libreria non istallata correttamente.
Ecco il codice:


#include <stdio.h>
#include <cstdlib>
#include <allegro.h>




int main (void)
{
allegro_init();



return 0;
}

END_OF_MAIN()



L'errore del compilatore è il seguente :muro: :

"/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Entering directory `/f/BeansProjects/IlGioco'
"/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/MinGW_1-Windows/ilgioco.exe
make[2]: Entering directory `/f/BeansProjects/IlGioco'
mkdir -p dist/Debug/MinGW_1-Windows
g++.exe -o dist/Debug/MinGW_1-Windows/ilgioco build/Debug/MinGW_1-Windows/Main.o



build/Debug/MinGW_1-Windows/Main.o: In function `install_allegro':
c:/mingw/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../include/allegro/system.h:81: undefined reference to `_get_allegro_version'
c:/mingw/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../include/allegro/system.h:81: undefined reference to `get_config_text'
c:/mingw/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../include/allegro/system.h:81: undefined reference to `_imp__allegro_error'
c:/mingw/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../include/allegro/system.h:81: undefined reference to `ustrzcpy'
c:/mingw/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../include/allegro/system.h:81: undefined reference to `_install_allegro'
build/Debug/MinGW_1-Windows/Main.o: In function `WinMain@16':
F:\BeansProjects\IlGioco/Main.cpp:17: undefined reference to `_WinMainmake[2]: Leaving directory `/f/BeansProjects/IlGioco'


make[1]: Leaving directory `/f/BeansProjects/IlGioco'


'
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/MinGW_1-Windows/ilgioco.exe] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2

BUILD FAILED (exit value 2, total time: 1s)



Visto la semplicità del codice, credo che il problema dipendi dalle librerie ancora.:muro:

Secondo te da che dipende ?

AngeL)
02-07-2011, 15:03
In tal caso accertati di aver effettuato correttamente i passaggi dell'installazione della libreria (http://wiki.allegro.cc/index.php?title=Setting_up_Code::Blocks_with_Allegro_on_XP#STEP_2_-_Installing_The_Allegro_Library). Il file è /docs/build/readme.txt