为什么Android NDK对32位和64位ABI使用不同的GCC版本?

为什么Android NDK对32位和64位ABI使用不同的GCC版本?,android,gcc,android-ndk,Android,Gcc,Android Ndk,从(我的)重点: 使GCC 4.8成为所有32位ABI的默认值。不推荐使用的GCC 4.6,以及 将在下一版本中删除它。要恢复以前的行为,请添加 NDK_工具链_版本=4.6到NDK构建,或添加 --在命令行上执行make-standalone-toolchain.sh时,toolchain=arm-linux-androideabi-4.6GCC 4.9仍然是 64位ABI的默认值 具体来说,是否有任何理由不将GCC4.9用于32位ABI?我们需要std::regex支持,该支持仅在4.9中添

从(我的)重点:

使GCC 4.8成为所有32位ABI的默认值。不推荐使用的GCC 4.6,以及 将在下一版本中删除它。要恢复以前的行为,请添加 NDK_工具链_版本=4.6到NDK构建,或添加 --在命令行上执行make-standalone-toolchain.sh时,toolchain=arm-linux-androideabi-4.6GCC 4.9仍然是 64位ABI的默认值


具体来说,是否有任何理由不将GCC4.9用于32位ABI?我们需要
std::regex
支持,该支持仅在4.9中添加。

这可能主要是出于实用原因。32位的默认版本落后了一点,因为旧版本更可靠,如果没有直接问题,他们可能更愿意继续使用

对于64位ABI,尤其是AARC64,较旧的GCC版本中的支持可能还不够成熟。此外,这些ABI以前根本不受支持,因此不存在回归的风险,因为它是一种全新的配置


如果您需要GCC4.9中的功能,只需添加
NDK\U TOOLCHAIN\U VERSION=4.9
。原则上不应该有任何问题,但如果有,我相信如果你遇到任何问题,他们会很乐意听到关于它的报道。

这可能主要是出于务实的原因。32位的默认版本落后了一点,因为旧版本更可靠,如果没有直接问题,他们可能更愿意继续使用

对于64位ABI,尤其是AARC64,较旧的GCC版本中的支持可能还不够成熟。此外,这些ABI以前根本不受支持,因此不存在回归的风险,因为它是一种全新的配置


如果您需要GCC4.9中的功能,只需添加
NDK\U TOOLCHAIN\U VERSION=4.9
。原则上不应该有任何问题,但如果有,我相信如果你遇到任何问题,他们会很乐意听到关于它的报道。

这可能主要是出于务实的原因。32位的默认版本落后了一点,因为旧版本更可靠,如果没有直接问题,他们可能更愿意继续使用

对于64位ABI,尤其是AARC64,较旧的GCC版本中的支持可能还不够成熟。此外,这些ABI以前根本不受支持,因此不存在回归的风险,因为它是一种全新的配置


如果您需要GCC4.9中的功能,只需添加
NDK\U TOOLCHAIN\U VERSION=4.9
。原则上不应该有任何问题,但如果有,我相信如果你遇到任何问题,他们会很乐意听到关于它的报道。

这可能主要是出于务实的原因。32位的默认版本落后了一点,因为旧版本更可靠,如果没有直接问题,他们可能更愿意继续使用

对于64位ABI,尤其是AARC64,较旧的GCC版本中的支持可能还不够成熟。此外,这些ABI以前根本不受支持,因此不存在回归的风险,因为它是一种全新的配置

如果您需要GCC4.9中的功能,只需添加
NDK\U TOOLCHAIN\U VERSION=4.9
。原则上不应该有任何问题,但如果有,我相信如果你遇到任何问题,他们会很乐意听到关于它的报道