2

使用するglibcのバージョンをコンパイル時に確認する必要があります。

私が見つけることができる唯一のコンパイル時チェック(つまり#defines)は、glibcの日付(__GLIBCXX__)を返し、日付とバージョンの対応は適切ではないようです。コンパイル時に、使用されるglibcのバージョンをどのように確認しますか?

私のコードは、非常に古いシステムを含むいくつかのシステムでコンパイルおよび実行されます。特に、malloc_infoの使用に興味があります(http://man7.org/linux/man-pages/man3/malloc_info.3.htmlを参照)。これはバージョン2.10でglibcに追加されました。プログラムは、それが構築されたものと同じ(または同一のシステム)で使用されます。

4

1 に答える 1

5

あなたが探しているのは、GNUCライブラリのメジャーバージョン番号とマイナーバージョン番号を表す__GLIBC__とです。詳細については、こちらアーカイブリンク)をご覧ください。__GLIBC_MINOR__int

したがって、__GLIBC__が2より大きいか、2に__GLIBC__等しく__GLIBC_MINOR__、10以上の場合は、malloc_info()機能するはずです。

于 2012-06-11T22:54:11.863 に答える