You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Delphi 10.4.2适配Android4.4.2引入MidasLib链接报错如何解决?

Delphi 10.4.2构建支持Android 4.4.2的MidasLib依赖应用方案

方案可行性判定

该方案完全可行,你当前遇到的是旧版本NDK的C++标准库路径配置问题,不属于底层兼容性障碍。

具体解决步骤

  • 补全NDK缺失的静态库文件
    你使用的NDK r9c版本的libc++_static.a、libc++abi.a默认不在链接器的默认搜索路径中,你可以在当前NDK目录下找到这两个文件:
    • libc++_static.a所在路径:你的NDK根目录\sources\cxx-stl\llvm-libc++\libs\armeabi-v7a\
    • libc++abi.a所在路径:你的NDK根目录\sources\cxx-stl\llvm-libc++abi\libs\armeabi-v7a\
      将上述两个文件复制到你的NDK根目录\toolchains\arm-linux-androideabi-4.8\prebuilt\windows\lib\gcc\arm-linux-androideabi\4.8\目录下,即可解决cannot find -lc++_static、cannot find -lc++abi的链接错误。
  • 确认MidasLib配置
    你已经替换了Delphi 10.2对应的libmidas.a文件,需要再检查两项配置:
    1. 工程的使用单元列表中已加入MidasLib单元
    2. 工程选项的Android SDK配置页面,取消勾选「使用IDE默认的NDK路径」,确保所有路径指向你替换后的r9c版本NDK
  • 调整链接器配置
    打开工程选项->Delphi编译器->链接页面,将C++标准库选项设置为libc++(静态),禁止使用动态链接,Android 4.4.2系统未内置对应版本的动态C++标准库,静态链接才能保证应用正常运行。

注意:如果后续需要同时适配Android 10及以上版本,建议单独开分支管理配置,不要在同一套SDK/NDK环境下同时适配Android 4.4和高版本系统,避免出现兼容冲突。

内容的提问来源于stack exchange,提问作者Federico Pessina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 15:54:08