Problem: include killt linker
-
Hallo,
mein Linker terminiert mit forlgenden Worten:
collect2: ld terminated with signal 11 [Segmentation fault], core dumped
Der Fehler tritt nur dann auf, wenn ich eine bestimmte Header-Datei einbinde (ich nenne sie mal Datei x).
Kommentiere ich die include-Direktive aus, lässt sich alles wunderbar übersetzen und linken. Nur dann kann ich halt auch die Klassen, die in Datei x deklariert sind, nicht mehr benutzen.
Und jetzt das twilight-zonige: binde ich Datei x nicht im Header meines Quellcodes, sondern in der zugehörigen cpp-Datei ein, gibts keine Probleme beim Linken.
Ich benötige aber die Klassen aus Datei x auch im Header meines Codes.
Der Code wird generiert (von einem UML-Tool, "Rhapsody") und der besagte Include befindet sich automatisch in der Header-Datei. Das ganze sollte sich nun kompilieren und linken lassen, ohne den Code manuell editieren zu müssen.
Ich brauche also keine Ratschläge, wie ich auch ohne den Include auskomme, sondern Anregungen, wo das Problem in Datei x oder eventuell auch bei den Compiler-Einstellungen liegen könnte. Vielleicht hat jemand schonmal ein ähnliches Problem gehabt. Mir hilft jeder Hinweis, woran es liegen könnte.Noch ein Wort zur Umgebung:
- OS = Windows 2000.
- Compiler = v850-elf-gcc (Cross-Compiler für ein StartWare-Board)
- Datei x = oxf/omcollec.h (Bestandteil des Rhapsody-Framework)Ich poste besagte Datei x hier nicht, weil:
- diese wieder etliche Dateien einbindet u.s.w. und damit leicht einige tausend Zeilen Code zusammenkämen
- ich damit sicher gegen Copyrights verstoßen würde und ich bin noch zu jung und zu hübsch für den Knast
- es kein offensichtlicher Fehler im Quellcode sein kann, denn mit dem Visual-C-Compiler gibts das Problem nichtFalls jemand der Meinung ist, mir nur nach Begutachtung des konkreten Codes helfen zu können, so maile ich diesen auch gerne. Auch auf andere Fragen antworte ich gerne, sofern sie zur Fehlerfindung dienlich sein können.
Ich danke erstmal jedem, der sich überhaupt die Mühe gemacht hat, sich den ganzen Mist hier durchzulesen.
Und ganz besonderer Dank an alle, die Antworten.MfG,
Nick