Usando bibliotecas compiladas libstdc ++ com clang ++ -stdlib = libc ++
Eu estou trabalhando em C ++ no Mac OS X (10.8.2) e eu recentemente surgiu a necessidade de usar os recursos do C ++ 11, que estão disponíveis através do compilador clang ++ usando o libl ++ stdlib. No entanto, eu também preciso usar alguma biblioteca legada compilada e vinculada contra libstdc ++ (vindo de MacPorts).
Ao fazer isso, tenho erros de vinculação, pois os cabeçalhos das bibliotecas legadas usam, por exemplo,std::string
, necessário para ser resolvido contra ostd::__1::basic_string
(isto é, a implementação de libc ++std::string
) ao invés destd::basic_string
implementação.
Existe uma maneira de misturar as duas bibliotecas em desenvolvimento (por exemplo, usando alguns sinalizadores de pré-processadores?)