autoconf/automakeを使うと、システム上でGCCのバージョンを見つける方法は?GCCのバージョンを見つけよう
インストールされているPythonのバージョンを取得するには、AM_PATH_PYTHONを使用して、PYTHON_VERSION変数を使用できるようにします。 GCCのバージョンに似たものはありますか?
(また、それはGCCの、メジャー、マイナー、およびパッチレベルを取得することは可能でしょうか?)
autoconf/automakeを使うと、システム上でGCCのバージョンを見つける方法は?GCCのバージョンを見つけよう
インストールされているPythonのバージョンを取得するには、AM_PATH_PYTHONを使用して、PYTHON_VERSION変数を使用できるようにします。 GCCのバージョンに似たものはありますか?
(また、それはGCCの、メジャー、マイナー、およびパッチレベルを取得することは可能でしょうか?)
クイック検索があなたにGCC_VERSION
変数を与える必要がありますax_gcc_versionマクロを明らかにする。
残念ながら、そのマクロは、deprecated in favour ofのAX_*_CHECK_FLAG
であるAX_GCC_OPTION
に依存します。
これmailing list postはにのぼるax_gcc_version
のパッチを示唆:
AC_DEFUN([AX_GCC_VERSION], [
GCC_VERSION=""
AX_CHECK_COMPILE_FLAG([-dumpversion],
[ax_gcc_version_option=yes],
[ax_gcc_version_option=no])
AS_IF([test "x$GCC" = "xyes"],[
AS_IF([test "x$ax_gcc_version_option" != "xno"],[
AC_CACHE_CHECK([gcc version],[ax_cv_gcc_version],[
ax_cv_gcc_version="`$CC -dumpversion`"
AS_IF([test "x$ax_cv_gcc_version" = "x"],[
ax_cv_gcc_version=""
])
])
GCC_VERSION=$ax_cv_gcc_version
])
])
AC_SUBST([GCC_VERSION])
])
私はこれをテストしていませんが、それは賢明に見えます。
(また、それはGCCの、メジャー、マイナー、およびパッチレベルを取得することは可能でしょうか?)
あなたはGCC_VERSION
にバージョン文字列を持っていたら、手動に文字列を分割することができますメジャーバージョン、マイナーバージョン、パッチバージョンを入手してください。簡単な解決策は次のとおりです。
GCC_VERSION_MAJOR=$(echo $GCC_VERSION | cut -d'.' -f1)
GCC_VERSION_MINOR=$(echo $GCC_VERSION | cut -d'.' -f2)
GCC_VERSION_PATCH=$(echo $GCC_VERSION | cut -d'.' -f3)
私は質問があります:なぜ、 'ax_cv_gcc_version'に値をキャッシュし、 GCC_VERSION'をそれに?私 – Bionix1441
gccがインストールされていない場合はどうしますか? –
Cry。個人的に私は非gccコンパイラをサポートしていません(そして、物理学者コミュニティでは大きな問題ではないと思います)。 – VolatileStorm