Bonjour,
Mon projet global comprend une librairie statique compilée avec le .pro suivant:
Et une application qui utilise cette librairie statique avec le .pro suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 TARGET = kissfft TEMPLATE = lib CONFIG += staticlib [...] DESTDIR = bin
J'utilise Qt Creator 2.6.0 avec Qt5b2, et le compilateur MSVC2010.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 LIBS += -Lkissfft/bin -lkissfft INCLUDEPATH += kissfft DEPENDPATH += kissfft/bin PRE_TARGETDEPS += kissfft/bin
Dès que mon application essaye d'utiliser la librairie statique, j'obtiens ce genre d'erreurs:
Je ne comprend pas pourquoi ces erreurs de linkage, dans la mesure ou c'est le même compilateur qui est utilisé pour la librairie et l'application ... Une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 buffer.obj:-1: erreur : LNK2019: unresolved external symbol "void __cdecl kiss_fftr(struct kiss_fftr_state *,float const *,struct kiss_fft_cpx *)" (?kiss_fftr@@YAXPAUkiss_fftr_state@@PBMPAUkiss_fft_cpx@@@Z) referenced in function "public: virtual void __thiscall threadR2C::run(void)" (?run@threadR2C@@UAEXXZ) texbuffer.obj:-1: erreur : LNK2001: unresolved external symbol "void __cdecl kiss_fftr(struct kiss_fftr_state *,float const *,struct kiss_fft_cpx *)" (?kiss_fftr@@YAXPAUkiss_fftr_state@@PBMPAUkiss_fft_cpx@@@Z)
NB: la fonction qui n'est pas trouvé (kiss_fftr) n'est pas une fonction déclaré dans le header global de la librairie, mais une fonction intrinsèque à la librairie (appelée par une fonction du header global, mais qui ne fait pas partie du header global).
Partager