PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : IRIX C Source unter Linux kompilieren



soundoflife
14-04-2007, 16:27
Hallo!
Ich möchte ein C-Programm kompilieren, das unter IRIX geschrieben wurde.
Kriege folgende Fehlermeldungen:
"undefined reference to"
Hat jemand Erfahrung damit? Was soll ich beachten? Wo sollen Änderungen vorgenommen werden?

openSuSE 10.2

Hier die ganze Ausgabe:

alex@linacer:~/unv> make
g++ -o unv basis_data_func.o get_datatyp_name.o lese_unv.o unv.o write_unv.o -L/usr/lib -lQtGui -L/usr/lib -L/usr/X11R6/lib -lpng -lSM -lICE -lXi -lXrender -lXrandr -lXfixes -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 -lQtCore -lz -lm -ldl -lpthread
/usr/lib/gcc/i586-suse-linux/4.1.2/../../../crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
basis_data_func.o: In function `getNodeByLabel':
basis_data_func.c:(.text+0x33): undefined reference to `unv_node'
lese_unv.o: In function `lese_unv':
lese_unv.c:(.text+0x103): undefined reference to `unv_node'
lese_unv.c:(.text+0x120): undefined reference to `unv_node'
lese_unv.c:(.text+0x157): undefined reference to `unv_element'
lese_unv.c:(.text+0x174): undefined reference to `unv_element'
lese_unv.c:(.text+0x1ab): undefined reference to `unv_group'
lese_unv.c:(.text+0x1c8): undefined reference to `unv_group'
lese_unv.c:(.text+0x232): undefined reference to `unv_group'
lese_unv.c:(.text+0x263): undefined reference to `surface'
lese_unv.c:(.text+0x275): undefined reference to `unv_group'
lese_unv.c:(.text+0x293): undefined reference to `unv_group'
lese_unv.c:(.text+0x299): undefined reference to `surface'
lese_unv.c:(.text+0x2ef): undefined reference to `surface'
lese_unv.c:(.text+0x304): undefined reference to `unv_group'
write_unv.o: In function `write_unv':
write_unv.c:(.text+0x22d): undefined reference to `unv_node'
write_unv.c:(.text+0x245): undefined reference to `unv_element'
write_unv.c:(.text+0x25d): undefined reference to `unv_group'
collect2: ld returned 1 exit status
make: *** [unv] Fehler 1

quinte17
14-04-2007, 17:55
dies ist bestimmt nicht die ganze fehlermeldung... damit kann bestimmt keiner was anfangen...

greetz

locus vivendi
15-04-2007, 11:55
Ich möchte ein C-Programm kompilieren, das unter IRIX geschrieben wurde.
Kriege folgende Fehlermeldungen:
"undefined reference to"
Hat jemand Erfahrung damit? Was soll ich beachten? Wo sollen Änderungen vorgenommen werden?

openSuSE 10.2

Hier die ganze Ausgabe:

alex@linacer:~/unv> make
g++ -o unv basis_data_func.o get_datatyp_name.o lese_unv.o unv.o write_unv.o -L/usr/lib -lQtGui -L/usr/lib -L/usr/X11R6/lib -lpng -lSM -lICE -lXi -lXrender -lXrandr -lXfixes -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 -lQtCore -lz -lm -ldl -lpthread

Die Meldungen bedeuten vermutlich, dass das Programm Funktionen verwendet die nicht definiert wurden.

Leider reichen die Angaben immer noch nicht ganz aus, um den *genauen* Grund für den Fehler herauszufinden. Es könnte z.B. sowohl sein, dass der Sourcecode unvollständig ist, aber auch das das Makefile nicht korrekt ist.

Möglicherweise hilft es dir weiter, wenn du in alle Sourcecode Dateien des Programms schaust, ob es dort Funktionen gibt, die in den "undefined reference" Meldungen auftauchen. Wenn das der Fall ist, dann deutetes es darauf hin, dass das Makefile falsch ist.

Übrigens: Du schreibst, dass es sich um eine C-Programm handelt. Zum Übersetzen wird aber der C++-Compiler benutzt. Soetwas solltest du auf jeden Fall erläutern.

P.S.: Ich persönlich würde es begrüßen, dass wenn du im Nachhinein deinen Beitrag veränderst, du dann auch dazu schreibst, dass dies passiert ist.

locus vivendi
15-04-2007, 11:58
P.P.S: Ich sehe gerade, dass eine Notiz über die Änderung vorhanden ist. Bloß sieht man die nicht mehr, wenn man auf "Antworten" geklickt hat. Betrachte mein P.S. als gegenstandslos.

anda_skoa
15-04-2007, 15:35
Undefined reference to 'main' bedeutet schon mal, daß entweder in keiner Datei ein main() Funktion vorhanden ist, oder diese Datei nicht kompiliert wurde.

Ciao,
_

soundoflife
16-04-2007, 11:54
Danke für die Hilfe!
Ich bin weitergekommen!