ld linker Fehler "cpu Modell verstecktes Symbol"

8

Ich bekomme einen ld-Fehler, wenn ich versuche, ein sfml-Programm auf Ubuntu 16.04 zu kompilieren. Dies ist anscheinend ein bekanntes Problem, und es soll eine Abhilfe geben, aber ich verstehe nicht, was es ist ...

Ссылка

Der von ld ausgespuckte Fehler ist

%Vor%

Es gibt keinen relevanten Code dazu - wie ich es verstehe, wird dieser Fehler auf allen ubuntu 16.04-Systemen mit g ++ 5 erzeugt, wenn das zu verknüpfende Programm Objekte wie sf::Texture und sf::Sprite enthält. (Ich weiß nicht mehr Details als das.)

Ich habe auch versucht, mit g ++ 4.9 zu kompilieren, aber derselbe Fehler tritt auf.

Meine Kompilierzeile ist g++-4.9 --std=c++11 -Wall main.cpp -lsfml-graphics -lsfml-window -lsfml-system -o a.out

Hat jemand anderes diesen Fehler erfahren und erfolgreich gelöst?

    
user3728501 02.08.2016, 18:19
quelle

3 Antworten

9

Ich musste dieses Problem mehrmals beheben. Anstatt den Patch anzuwenden, können Sie ihn manuell korrigieren, indem Sie die Datei SFML / src / SFML / Graphics / CMakeLists.txt bearbeiten. In Zeile 149 finden Sie Folgendes:

%Vor%

Fügen Sie nach dem endif () Folgendes ein:

%Vor%

Führen Sie anschließend im SFML-Ordner der obersten Ebene Folgendes aus:

%Vor%

Dadurch wird es ohne den Compiler-Fehler erstellt und installiert. (Hinweis: Entfernen Sie die -D-Flags von cmake, wenn Sie keine Dokumente oder Beispiele wünschen)

    
Joshua Whitley 21.09.2016 04:56
quelle
2

Ich habe dies im SFML-Quellverzeichnis ausgeführt, bevor ich den Standard cmake...make :

ausgeführt habe %Vor%

und das hat das Problem gelöst

    
Guss 31.10.2016 22:03
quelle
0

Ich habe den gleichen Linker-Fehler beim Versuch, SFML 2.4.2 mit Beispielen zu erstellen, speziell mit opengl und Shader .

Inspiriert von der @ Joshua-Lösung habe ich versucht, den Compiler von GCC in Clang zu ändern. Es funktionierte.

Ich teile hier, weil es scheint, eine einfachere Lösung zu sein, wenn Sie keine Einschränkungen haben, Clang zu verwenden.

Einfach SFML herunterladen und in sein Verzeichnis wechseln. Und ...

%Vor%     
gagallo7 30.07.2017 06:04
quelle

Tags und Links