您的位置 首页 > 数码极客

【createprocess失败】Google发布最新Android NDK r21工具集测试版,为首长期支持版本

开发人员可以通过一套能够在Android设备上运行C/C程序的本地开发工具包(NDK)开发工具,发布最新的r21测试版本、更新工具链和系统要求,以及改进预设项目,从而提高安全性和性能。谷歌提到每年都会发布长期支持版本。

最新的Android NDK版本更新GNU Make到4.2版,该版本提供--output-sync功能,可避免输出与错误讯息交错显示,现在ndk-build会预设启用此功能,而GNU Make版本更新也修正了在Windows上的CreateProcess错误。GDB也更新到了8.3版,修正英特尔CPU除错的错误。

LLVM也有更新,所有元件包括Clang和lld等,采用了新2019年7月10日之前的主分支r365631,libc++则使用更新的版本r369764,除了修复许多旧版本的Bug之外,最重要的修正是在Windows上使用多执行绪连结时,LLD不会再失去回应。其他更新还有OpenMP现在可以当作动态函数库使用,且由于Google改进了驱动程式,每个建置系统需要的编译配置数量也大幅降低。

Android NDK r21在预设情况下,静态代码分析工具Fortify会在使用ndk-build或是CMake工具链档案的时候启用,Fortify可以对标准函数库进行额外的检查,更快地发现Bug,减少安全问题的发生。另外,这个NDK版本有新的最低系统需求,继AndroidStudio和SDK之后,NDK也不再支持32位Windows,Linux用户则必须至少使用glibc 2.17或更高版本。

Google现在为开发者提供支持时间长达一年的长期支持版本,针对需要稳定性但是不需要新功能的用户,长期支持版本会有较长的Beta测试周期,并且在隔年长期支持版本发布之前,能够持续获得错误修正,发布的时间会落在一年中的第四季。非长期支持版本,发布的节奏会跟目前的发布流程一样,主要是新功能集的发布,也只会对重要工具链进行错误修补。

而针对Arm代码的建置,现在预设使用Arm进阶SIMD架构扩充Neon,Google提到,旧版本会在特定条件下使用minSdkVersion,但考察目前只有极少数的装置不支持Neon,因此现在无条件预设启用,32位的Arm装置因此将会获得性能上的改进,开发者仍然可以在不支持Neon的装置上应用程式禁用Neon。

关于作者: admin

无忧经验小编鲁达,内容侵删请Email至wohenlihai#qq.com(#改为@)

热门推荐