来自docs(强调我的):
使GCC 4.8成为所有32位ABI的默认值。不推荐使用GCC 4.6,和 将在下一个版本中删除它。要恢复以前的行为,请添加 NDK_TOOLCHAIN_VERSION = 4.6到ndk-build,或者添加 - 在命令行上执行make-standalone-toolchain.sh时,totochain = arm-linux-androideabi-4.6。 GCC 4.9仍然是 默认为64位ABI 。
具体来说,有没有理由不将GCC 4.9用于32位ABI?我们需要std::regex
支持,仅在4.9中添加。
答案 0 :(得分:3)
这可能主要是出于实际原因。 32位的默认版本滞后一点,因为旧版本更加经过验证,如果没有直接问题,他们可能更愿意继续使用它们。
对于64位ABI,特别是aarch64,旧版GCC版本的支持可能还不够成熟。此外,这些ABI之前根本没有得到支持,所以没有回归的风险,因为它是一个全新的配置。
如果您需要GCC 4.9中的功能,只需添加NDK_TOOLCHAIN_VERSION=4.9
即可。原则上不应该有任何问题,但是如果有的话我肯定他们喜欢听到有关它的报道,如果你遇到任何问题。