delphi xe 12.3下解决错误 ld.exe: unrecognized option ‘--no-rosegment‘
一个老项目原先用delphi xe老版本编译的,后升级到12.2,发现程序在安卓下会占据全面屏,导致程序底部的按键与系统按键区域重叠导致按键不可操作。
刚好delphi xe12.3出来了,升级到12.3,结果编译报错:
[DCC Error] E2597 C:\Users\Public\Documents\Embarcadero\Studio\23.0\PlatformSDKs\android-ndk-r21\toolchains\aarch64-linux-android-4.9\prebuilt\windows-x86_64\aarch64-linux-android\bin\ld.exe: unrecognized option '--no-rosegment'
网上找了一番也没找到解决方法,又仔细看看错误信息,看到“android-ndk-r21”感觉版本似乎有点低。
从Delphi IDE。进入Tools->Options。在左侧树形菜单中选择SDK Manager。
看到有新的SDK 35版本了我用的还是API24的,选择新版本SDK,保存。
重新编译后错误消失,在安卓下运行也正常了。
且新的SDK编译后比老的程序体积小了百分之十左右。