使用するアプリケーションまたはライブラリが不可分機能を使用し、そのアプリケーションまたはライブラリが GCC バージョンの libatomic を使用する実行可能ファイルおよびライブラリと相互運用する必要がある場合、Oracle Developer Studio プログラムを GCC バージョンの libatomic とリンクする必要があります。プログラム内の不可分実行時ライブラリのバージョンが 1 つだけになるよう注意する必要があります。
Oracle Developer Studio の C および C++ プログラムを GCC バージョンの libatomic とリンクするには、コンパイラオプション –xatomic=gcc を使用します。
GCC バージョンの libatomic が /usr/lib に存在しない古いシステムでリンクおよび実行する場合、不可分機能のサポートの非互換性について懸念する必要はありません。そのような状況では、使用される不可分ライブラリがほかに存在しないため、libstatomic を GCC バイナリと組み合わせてシステム上で使用できます。
Oracle Developer Studio コンパイラは libstatomic ライブラリと一緒に使用すると最適に動作しますが、GCC の libatomic バージョン 1.1 と互換性があり、次に示すような既知の課題があります。
libatomic 1.0.0 を含む GCC 4.8 - このバージョンの libatomic は、C 11 プログラムの浮動小数点不可分機能を使用しない場合、C11 および C++11 の不可分機能をサポートします。GCC 4.8 コンパイラ自体は、将来のリリースまで C11 をサポートしません。
libatomic 1.1 を含む GCC 4.9 および 5.1 - このバージョンは、C11 用の浮動小数点不可分機能を含み、これらのバージョンを持つ GCC コンパイラは C11 の不可分機能のキーワードをサポートします。
Oracle Linux 7.x および Oracle Solaris 11.3 には libatomic 1.0.0 を含む GCC 4.8 が含まれています。