wxDev.fr, le portail francophone consacré à wxWidgets ! ( The french portal for wxWidgets )  
Esp. membre
Recheche rapide



Recherche avancée
Statistiques
Membres inscrits :668

Membres en ligne : 0
Invités en ligne : 6
Pub hébergeur
Pourquoi cette pub ?

Valid XHTML 1.0 Transitional

Valid CSS2

Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Compilation - Installation - Réglages IDE
» Erreur de linkage C::B et wx2.8
Conversation : Erreur de linkage C::B et wx2.8
23-04-2009 10:29:27  Erreur de linkage C::B et wx2.8 #1
Mindiell (Nouveau membre)
Inscrit le : 20-12-2008
Messages: 7
Snippets: 0
Tutoriels: 0
Hors ligne
Bonjour,

J'ai utilisé les tutoriels de Xaviou très bien expliqués pour compiler les libs. J'ai bien obtenu les libwxxx28u_xxx.a
Mais lorsque je crée le premier exemple du tutoriel, j'ai ces erreurs de lien :

Debugger a écrit:
:: === FileFinder, Debug ===
obj\Debug\mainframe.o:: In function `ZNK12wxStringBase5emptyEv':
)]+0x27):: undefined reference to `_imp___ZN12wxStringBase8InitWithEPKcjj'
)]+0x47):: undefined reference to `_imp___Z10wxOnAssertPKciS0_S0_S0_'
obj\Debug\filefinderapp.o:: In function `ZN12wxAppConsole16OnFatalExceptionEv':
C:\Documents and Settings\Administrator\My Documents\Perso\Programmation\Tests\FileFinder\..\..\libs externes\include\wx\app.h:(.rdata$_ZTV13FileFinderApp[vtable for FileFinderApp]+0x44):: undefined reference to `wxApp::Initialize(int&, char**)'
C:\Documents and Settings\Administrator\My Documents\Perso\Programmation\Tests\FileFinder\..\..\libs externes\include\wx\app.h:(.rdata$_ZTV13FileFinderApp[vtable for FileFinderApp]+0x90):: undefined reference to `wxAppConsole::OnAssertFailure(char const*, int, char const*, char const*, char const*)'
C:\Documents and Settings\Administrator\My Documents\Perso\Programmation\Tests\FileFinder\..\..\libs externes\include\wx\app.h:(.rdata$_ZTV13FileFinderApp[vtable for FileFinderApp]+0x94):: undefined reference to `wxAppConsole::OnAssert(char const*, int, char const*, char const*)'
:: === Build finished: 5 errors, 0 warnings ===
Alors, j'ai créé moi-même le projet, et j'ai fait bien attention à tout :
- j'ai les libs au bon endroit
- j'ai les .h aussi au bon endroit
- j'ai mis ca dans le lieur :
    -lwxbase28u
    -lwxmsw28u_base

Ca compile parfaitement, mais ca plante à la liaison.
Je dois bien garder mes dlls nommées : wxbase28u_gcc_Mindiell.dll ???

Merci à vous,

PS :
W2K3 Server
C::B
MinGW
23-04-2009 11:47:06  Re: Erreur de linkage C::B et wx2.8 #2
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1191
Snippets: 23
Tutoriels: 6
Site web
Hors ligne
Salut.

Plusieurs petites choses à vérifier :
- les flags wxUSE_UNICODE et WXUSINGDLL doivent être définis dans les options du projet puisque tes libs ont été compilées avec ces valeurs apparement.
- il ne doit pas y avoir de DEBUG ou WXDEBUG, dans les options du projet.
- ta deuxième lib linkée est incorrecte : je pense que ça doit être wxmsw28u_core

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
23-04-2009 12:45:20  Re: Erreur de linkage C::B et wx2.8 #3
Mindiell (Nouveau membre)
Inscrit le : 20-12-2008
Messages: 7
Snippets: 0
Tutoriels: 0
Hors ligne
Youhouhou !!!

- Je n'avais pas ces flags
- J'avais effectivement __WXDEBUG__
- J'avais bien la lib core, je me suis gouré en tapant mon message :o)

Par contre, ainsi ca ne marchait pas, alors j'ai essayé de compiler en Release : ca marche enfin !

Quel boulet je fais de vouloir utiliser les libs release pour compiler du debug. En même temps, je suis obligé d'utiliser les libs de Debug pour compiler en debug ?
je veux pas debugger WxWidgets, mais mon programme....

Merci à toi, je vais pouvoir continuer ton tutoriel !
23-04-2009 13:30:44  Re: Erreur de linkage C::B et wx2.8 #4
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1191
Snippets: 23
Tutoriels: 6
Site web
Hors ligne
Si tu veux utiliser les libs release, même en mode debug, il suffit de supprimer cette valeur et ça devrait marcher.

Dans ce cas, moi, je crée une valeur perso (par exemple MY_DEBUG) pour pouvoir éventuellement mettre des #ifdef dans le code.

Mais l'utilisation de __WXDEBUG__ implique l'utilisation des libs wxmsw28ud...

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
23-04-2009 13:38:04  Re: Erreur de linkage C::B et wx2.8 #5
Mindiell (Nouveau membre)
Inscrit le : 20-12-2008
Messages: 7
Snippets: 0
Tutoriels: 0
Hors ligne
T'es un Dieu, en effet, ca marche parfaitement !

Merci beaucoup, je reviendrai ;)
Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Compilation - Installation - Réglages IDE
» Erreur de linkage C::B et wx2.8