Autor Wątek: [C++] Dołączanie biblioteki statycznej do własnej biblioteki.  (Przeczytany 706 razy)

Offline Vx-x.

  • Użytkownik
    • Vx-x. Page

# Marzec 09, 2010, 15:54:22
Witam,
mam problem dość dziwny, a nie mam pomysłu jak sformułować pytanie w googlu żeby dostać odpowiedz. Otóż załóżmy że buduje sobie bibliotekę statyczną (własną) w której wykorzystuje np. funkcję z gl.h i linkuje opengl32.a. Wszystko się kompiluje, powstaje plik libMyLib.a. Teraz tworze sobie nowy pusty projekt i wykorzystuje funkcję z mojej  biblioteki, przy czym wywołuje przez nią funkcję z OpenGL. Wszystko ładnie się kompiluje, a tu nagle wysyp "undefined reference to...", które odnoszą się do funkcji z nagłówka gl.h. Linkerowi wrzucam więc opengl32.a i po problemie. Tylko co jeśli chciałbym, żeby użytkownik nie musiał sam dołączać bibliotek z których korzysta aplikacja, a mój plik .a zawierał je sam w sobie?

PS: ktoś gdzieś zaproponował
Kod: (cpp) [Zaznacz]
#pragma comment ale to rozwiązanie odpada.

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Xion

  • Redaktor
    • xion.log

# Marzec 09, 2010, 20:32:09
Jeśli twój program (korzystający z twojej biblioteki) sam w sobie korzysta z OGL, to liby OGL-a też musisz dołączyć do linkowania i nie ma tu znaczenia, że twój lib już je zawiera (linker i tak wyeliminuje powtarzające się definicje).