Frage

Ich versuche, für eine 64-Bit-Plattform, die eine Version meiner Software zu überqueren kompilieren. Kann ich die 32-Bit und 64-Bit-Version von libstdc ++, ohne zu viel Sorgen auf der gleichen Maschine installiert zu brechen meinem Linux installieren. Das O ist 32bit ubuntu.

Ich habe Kreuz nicht kompilierte vor und wollte nur, dass überprüfen, ob ich meinen CFLAGS und LDFLAGS für die entsprechende CPU soll ich in Ordnung sein, wenn ich die richtigen Versionen von libstdc ++ installiert ist.

Ich überprüfte eine 64-Bit-Version von Ubuntu aber dies hat einen symbolischen Link

lib64 -> lib

Dies würde vermasselt viel, wenn dies der Fall auf einer 32-Bit-Maschine ist auch jemand weiß, wie dies zu sortieren?

Ich schlage den folgenden Fehler in dem Moment

 [exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.so
 [exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.a
 when searching for -lstdc++ [exec] /usr/bin/ld: skipping incompatible
     

und so weiter bis

 [exec] /usr/bin/ld: cannot find -lstdc++
 [exec] collect2: ld returned 1 exit status

Welche aufgrund Tatsache scheint zu sein, ich habe nicht die 64-Bit-Version von libstdc ++

War es hilfreich?

Lösung

Sicher Sie können.

Nur sie in /usr/lib und /usr/lib64 setzen sind.

Kann es nicht auf Ubuntu überprüfen, aber auf Fedora sie bekommen es direkt aus den Paketen:

[~#] repoquery -q -l libstdc++.i386
/usr/lib/libstdc++.so.6
/usr/lib/libstdc++.so.6.0.10

[~#] repoquery -q -l libstdc++.x86_64
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.10
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top