ホームページ  >  記事  >  バックエンド開発  >  C 0x モードで libc で Clang を使用すると、Boost::Program_Options がリンクに失敗するのはなぜですか?

C 0x モードで libc で Clang を使用すると、Boost::Program_Options がリンクに失敗するのはなぜですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-03 20:08:29997ブラウズ

Why Does Boost::Program_Options Fail to Link When Using Clang with libc   in C  0x Mode?

C 0x モードで libc で Clang を使用すると、boost::program_options がリンクに失敗するのはなぜですか?

libc ライブラリで Clang を使用して boost をコンパイルしたにもかかわらず、コードC 0x モードで Clang を使用するとリンクが失敗します。これは、 libc が gcc の libstdc とバイナリ互換性がないためです。 std::string の API は同じままですが、その ABI は C 11 のインライン名前空間機能を使用して変更され、リンカーが std::string と std::__1::basic_string を別個のデータ構造として扱うようになりました。これにより、バイナリとライブラリ間のリンクが成功しなくなります。

以上がC 0x モードで libc で Clang を使用すると、Boost::Program_Options がリンクに失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。