Toon posts:

[C++] Qt linker error *

Pagina: 1
Acties:

Verwijderd

Topicstarter
Probleem opgelost na het bouwen van een cross compiler (lees onderaan).
Bedankt voor de hulp !

Net gcc 3 geinstalleerd op een sparc solaris 2.7 systeem..
vervolgens krijg ik undefined references tijdens het linken van de Qt library, terwijl ik deze qt-mt lib wel kan vinden tijdens het compilen !?
Ik gebruik GNU automake 1.7.2...
Het LD_LIBRARY_PATH staat goed in mijn .cshrc en kan ik ook zien met een echo $

g++ -Wall -pipe -O0 -g -DWEB -g -O2 -o q main.o shotnr.o dom_signal.o state_machine.o ece_data_thread.o common.o adc_common.o dom_common.o main_window.o main_window_moc.o main_window_imp.o main_window_moc_imp.o ../../../../SEG/VME/sol2.7/lib/libvme.a -lpthread
-omnithread -ldom -lqt-mt
Undefined first referenced
symbol in file
QWidget::dropEvent(QDropEvent*) main_window_moc.o
QWidget::setGeometry(int, int, int, int)main_window_moc.o
... en nog een eindeloze lijst van deze QWidgets die niet gevonden kunnen worden.

:?

Kan ik iets met de hand doen zodat ik in elk geval verder kan met debuggen...

[ Voor 5% gewijzigd door Verwijderd op 27-02-2003 00:21 ]


Verwijderd

Lekker duidelijk topictitel wel :) Misschien helpen spekkies ook wel voor het helpen..

Stiekem gauw veranderen he :P

[ Voor 20% gewijzigd door Verwijderd op 19-02-2003 23:06 ]


Verwijderd

Topicstarter
Is deze vraag te moeilijk :'( Help ? Please ?

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 21-08 17:14
Nee, maar de professionals zijn niet 24 uur/dag online. Dus kicken pas na 24 uur.

Tijdens het compileren gebruik je de lib helemaal niet. De aanname dat je'm soms ziet is dus al fout. Verder denk ik dat de qt library anders heet, dat er nog een versienummer bij hoort. Dus qt-mt30 oid.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Wat is dit? "../../../../SEG/VME/sol2.7/lib/libvme.a" maak daar is gewoon -lvme van? En heet je lib idd wel "libqt.a" of "libqt.so", ik weet die extensies nooit...of zet je lib-path expliciet met "-Lpath". Verder wat is eerst -O0 en daarna -O2? Misschien geen debug build maken, dus "-g" weg? (die er ook dubbel in staat)

Verwijderd

Topicstarter
Volgens mij is het iets algemeens en heeft het niet met Qt zelf te maken.
Waardaar zou ik voor elke library die ik link op deze solaris machine Symbol Referencing Errors krijgen na de installatie van gcc3 ?

Verwijderd

Topicstarter
Ik heb het radicaal anders opgelost !

Het is me gelukt een cross compiler te bouwen van gcc-3.2 met binutils-2.12, symbolic links naar de native sparc solaris 2.7 libs in mijn desktop intel P4 prefix dir.

Het compilen voor de oude sparc processor gaat nu veel sneller vanaf mijn desktop.
Binnenkort ga ik mijn collega's dezelfde gunst gunnen door hen met distcc van de crosscompilede libs en compilers op mijn computer gebruik te laten maken.

Hoeraa! :*)
Pagina: 1