Chciałem wykorzystać źródła uniksowego libgadu przerobionego na potrzeby konnekta. W finalnej fazie linkwania mam jednak pewne problemy. Najpierw zainstalowałem narzędzia z pakietu mingw. W libgadu skompilowałem wszytskie pliki (wiele ostrzeżeń) do plików obiektowych (http.c -> http.o). Następnie wszytskie te pliki włączyłem do statycznej biblioteki libgadu.a (ar cru) i na końcu ranlib libgadu.a. I bibliotekę mam już gotową. Następnie próbuje skompilować program:
CODE
#include "libgadu.h"
main()
{
gg_debug_level=255;
gg_session *sesja;
gg_login_params parametry;
memset(¶metry,0,sizeof(parametry));
parametry.uin=1234567;
parametry.password="haslo";
parametry.status=GG_STATUS_AVAIL;
sesja = gg_login(¶metry);
}
main()
{
gg_debug_level=255;
gg_session *sesja;
gg_login_params parametry;
memset(¶metry,0,sizeof(parametry));
parametry.uin=1234567;
parametry.password="haslo";
parametry.status=GG_STATUS_AVAIL;
sesja = gg_login(¶metry);
}
poleceniem:
CODE
g++ program.cpp -c -o program.o -I"C:\OpenSSL\include"
i linkuje:
CODE
g++ house.o libgadu.a -o program -L"C:\OpenSLL\lib\MinGW"
i tu jest błąd:
CODE
program.o(.text+0x2e):program.cpp: undefined reference to '_imp__gg_debug_level'
program.o(.text+0x6f):program.cpp: undefined reference to '_imp__gg_login'
Co jest nie tak? Ten sam program takim samym sposobem pod linuksem kompiluje się bez problemów. Proszę o pomoc.