Dort
Originalplakat- 22. Juli 2016
- 22. Juli 2016
Ich arbeite an einem Projekt, das darin besteht, eine Windows-Anwendung auf einem Mac zu kompilieren. Die Anwendung ist in C++ mit Qt geschrieben. Es besteht aus Bibliotheken und dem Hauptprojekt:
http://hpics.li/d8bb2ec
Das Projekt verwendet eine externe Bibliothek, ODA, um .dwg- und .dgn-Dateien zu verwalten.
Das Problem ist, wenn ich die erste Bibliothek (MdCore) kompiliere, erhalte ich eine Fehlermeldung: Symbol(e) nicht gefunden für Architektur x86_64.
Zuerst habe ich -stdlib=libstdc++ zum qmake-Argument hinzugefügt, aber Qt hat mir 0-Byte-Dateien generiert, also war dies nicht die Lösung.
Ich habe verschiedene Versionen der ODA-Bibliothek ausprobiert: 32bit, 64bit für OSX 10.7 und 10.11. (Mein Mac läuft unter OSX 10.11)
Ich habe den Befehl 'Datei' in meinen Bibliotheken gemacht und hier die Ausgabe:
:
.a: aktuelle zufällige Bibliothek des ar-Archivs
.dylib:
Mach-0 Universal Binary mit 2 Architekturen
(für Architektur x68_64): Mach-0 64-Bit dynamisch verknüpfte gemeinsam genutzte Bibliothek x86_64
(für Architektur i386): Mach-0 dynamisch verknüpfte gemeinsam genutzte Bibliothek i386
Ich habe versucht, auf 32 und 64 Bit zu kompilieren, aber es ändert nichts. Ich habe dieses Problem seit zwei Wochen, ich weiß nicht, was ich tun kann
Ich habe ein Thema im Qt-Forum erstellt, vielleicht finden Sie weitere Informationen:
https://forum.qt.io/topic/69171/compile-generate-0-byte-files-on-os-x/11
https://forum.qt.io/topic/69171/compile-generate-0-byte-files-on-os-x/11
Falls jemand eine Ahnung oder Lösung hat, würde mich das interessieren
Vielen Dank ! C
cqexbed
- 4. Juni 2009
- Deutschland
- 22. Juli 2016
Dort
Originalplakat- 22. Juli 2016
- 22. Juli 2016
17:34:10: Beginn: '/Users/developpement/Qt/5.7/clang_64/bin/qmake' /Users/developpement/Desktop/Mediacad2/MdCore/MdCore.pro -r -spec macx-clang CONFIG+=debug CONFIG+= x86_64 KONFIG+=qml_debug
17:34:10: Der Prozess '/Users/developpement/Qt/5.7/clang_64/bin/qmake' wurde normal beendet
17:34:10: Beginnen Sie : '/usr/bin/make'
... C
cqexbed
- 4. Juni 2009
- Deutschland
- 24.07.2016
Dort
Originalplakat- 22. Juli 2016
- 25.07.2016
Code: |_+_|
in meiner Kompilierungsausgabe habe ich diese Zeilen mehrmals, aber nur die letzte Zeile ändert sich (der Name der Datei ändert sich)
Bearbeiten: Hier sind die gleichen Zeilen, aber mit Leerzeichen dazwischen
Code: |_+_| Zuletzt von einem Moderator bearbeitet: 25.07.2016 C
cqexbed
- 4. Juni 2009
- Deutschland
- 25.07.2016
Dort
Originalplakat- 22. Juli 2016
- 26. Juli 2016
Hier ist die vollständige Ausgabe (es ist sehr, sehr lang ! 100.000 Zeilen): http://textup.fr/171939hC
Bearbeiten: Ich habe mit der Eingabeaufforderung kompiliert, damit ich mehr Zeilen in der Ausgabe habe, und die letzten Zeilen sind interessant:
Undefinierte Symbole für Architektur x86_64:
Code: |_+_| Zuletzt von einem Moderator bearbeitet: 26.07.2016 C
cqexbed
- 4. Juni 2009
- Deutschland
- 26. Juli 2016
Zurück zu Ihrem konkreten Problem. Ich sehe die Linkfehler, die Sie in der 'vollständigen Ausgabe' gepostet haben, nicht, aber dies sieht nur nach normalen Linkerfehlern aus. Wie auf anderen Plattformen können Sie nm (oder Google) verwenden, um herauszufinden, wo diese Symbole definiert sind und es scheint in /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation für mich zu sein (aber ich habe eine sehr alter Mac, so dass es für Sie möglicherweise nicht wahr ist).
Sie würden nicht direkt mit dieser Bibliothek verknüpfen. Versuchen Sie, Code hinzuzufügen: |_+_| zu Ihren Linker-Flags.
Dort
Originalplakat- 22. Juli 2016
- 27.07.2016
zibby
- 5. Februar 2019
- 5. Februar 2019
cqexbesd sagte: Ich denke, dass eine Ausgabe von 100.000 für einen Build von einem beliebigen anderen System als dem kompliziertesten System wahrscheinlich ein Zeichen dafür ist, dass irgendwo etwas schief gelaufen ist - aber das ist ein allgemeinerer Kommentar zum Stand der Branche.MIT
Zurück zu Ihrem konkreten Problem. Ich sehe die Linkfehler, die Sie in der 'vollständigen Ausgabe' gepostet haben, nicht, aber dies sieht nur nach normalen Linkerfehlern aus. Wie auf anderen Plattformen können Sie nm (oder Google) verwenden, um herauszufinden, wo diese Symbole definiert sind und es scheint in /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation für mich zu sein (aber ich habe eine sehr alter Mac, so dass es für Sie möglicherweise nicht wahr ist).
Sie würden nicht direkt mit dieser Bibliothek verknüpfen. Versuchen Sie, Code hinzuzufügen: |_+_| zu Ihren Linker-Flags.
zibby
- 5. Februar 2019
- 5. Februar 2019
Ich habe eine ./configure-Datei bereit und sie läuft reibungslos, aber ich bekomme ffi ... verwandte 'Symbole nicht gefunden ...' und etwas mit dem Linker zu tun, wenn ich make ausführe
okieiam
- 17.12.2016
- 8. Februar 2019
zibbi sagte: hi leute ... ich bin auf ein sehr ähnliches problem gestoßen ... aber ich benutze das terminal zum kompilieren ... kann mir bitte jemand helfen, wie ich die gleiche lösung im falle von terminal machen kann?env CPPFLAGS='-I/home/foo/sw/include' LDFLAGS='-L/home/foo/sw/lib/' ./configure
Ich habe eine ./configure-Datei bereit und sie läuft reibungslos, aber ich bekomme ffi ... verwandte 'Symbole nicht gefunden ...' und etwas mit dem Linker zu tun, wenn ich make ausführe
Beliebte Beiträge