C++ ライブラリ・リファレンス

「MT-安全」の libC ライブラリのコンパイルとリンク

マルチスレッド環境で実行するために、libC ライブラリの iostream クラスを使用して作成したアプリケーションについては、ソースコードのコンパイルとリンク時に -mt オプションを指定する必要があります。このオプションを指定すると、前処理部には -D_REENTRANT が、リンカーには -lthread が渡されます。


注 -

libC および libthread とのリンクには、-lthread ではなく -mt を使用してください。-mt オプションを使用すると、ライブラリの正しい順番でのリンクが保証されます。誤って -lthread オプションを使用すると、そのアプリケーションは正しく動かないことがあります。


iostream クラスを使用するシングルスレッド用のアプリケーションには特別なコンパイラやリンカーオプションは必要ありません。デフォルトで、コンパイラは libC ライブラリとリンクします。