Verwendung von mit libstdc ++ kompilierten Bibliotheken mit clang ++ -stdlib = libc ++
Ich arbeite in C ++ unter Mac OS X (10.8.2) und habe kürzlich die Notwendigkeit entdeckt, C ++ 11-Funktionen zu verwenden, die über den Compiler clang ++ mit der libc ++ stdlib verfügbar sind. Ich muss jedoch auch eine ältere Bibliothek verwenden, die gegen libstdc ++ (von MacPorts) kompiliert und verlinkt wurde.
Dabei habe ich Verknüpfungsfehler erhalten, da die Header der Legacy-Bibliotheken, die z.std::string
, muss gegen die aufgelöst werdenstd::__1::basic_string
(d. h. die libc ++ - Implementierung vonstd::string
) anstatt derstd::basic_string
Implementierung.
Gibt es eine Möglichkeit, die beiden Bibliotheken in der Entwicklung zu mischen (z. B. mithilfe einiger Präprozessor-Flags?)