Ciao a tutti!
So che è una domanda molto specifica e particolare, ma non so più come risolvere questo problema, spero che qualcuno abbia qualche idea in merito!!!
Sto scrivendo un programma in C++ usando le librerie multipiattaforma Qt4.
In particolare devo leggere dei files XML e ho fatto un sistema a plugin che permette di scegliere il parse XML a run-time.
Per adesso ho scritto 2 plugin, uno che usa Xerces-c (il parser XML del progetto apache) e uno che usa QtXml (un modulo delle Qt4).
Quando l'esecuzione arriva su una particolare riga del programma ricevo un errore ed il programma esce (senza andare in crash).
La cosa strana è che l'errore esce solo se arrivo in quel punto facendo una particolare sequenza di operazioni, in tutti gli altri casi funziona benissimo!
L'errore è:
Codice:
my_program: symbol lookup error: libqtxml_plugin.so: undefined symbol: _ZN15QXmlInputSourceC1EP9QIODevice
Sto programmando su una Debian testing: ho provato su Windows 2000 e su una Slackware e il problema non si presenta.
Su Windows ho compilato con MinGW e sulla Slacware con una versione più vecchia di GCC di quella che ho sulla mia Debian, può essere un problema del nuovo GCC?
Non so dove cercare perché il codice apparentemente funziona bene e non andando in crash anche il debugger non mi da informazioni.
Qualcuno ha qualche idea in merito?
OS:
Linux Debian testing
Compilatore:
gcc (GCC) 4.1.3 20070601 (prerelease) (Debian 4.1.2-12)
CPU:
AMD AthlonXP 2200+
Kernel:
2.6.18-4-k7