Flutter ffi Failed to lookup symbol

iOS release版本,解决方式参考官方文档:在 iOS 中使用 dart:ffi 调用本地代码

如果debug版本也报这个错误,很可能是有多个.c文件,编译的时候没带上!

假设你的ffi模块名字是 c_lib

对于Android端,需要修改 src 目录下的 CMakeLists.txt

add_library(c_lib SHARED

c_lib.c

xxx.c

somedir/xxx.c

)

对于iOS,需要修改 ios/Classes 目录下的 c_lib.c 文件

#include "../../src/somedir/xxx.c"

#include "../../src/xxx.c"

#include "../../src/c_lib.c"

而且,include 的顺序也很重要,原则就是把被依赖的源文件放最前面,不然编译会报错,原因很简单:调用不能先于声明!

相关推荐
liulian09162 天前
Flutter 网络状态与内容分享库:connectivity_plus 与 share_plus 的 OpenHarmony 适配指南
网络·flutter
KKei16382 天前
Flutter for OpenHarmony 学习视频播放器技术文章
学习·flutter·华为·音视频·harmonyos
KKei16382 天前
Flutter for OpenHarmony 健身计划与运动打卡APP
flutter·华为·harmonyos
KKei16382 天前
Flutter for OpenHarmony 在线考试与自测系统APP技术文章
flutter·华为·harmonyos
liulian09162 天前
Flutter 依赖注入与设备信息库:get_it 与 device_info_plus 的 OpenHarmony 适配指南
flutter
KKei16382 天前
Flutter for OpenHarmony学习目标追踪应用技术文章
学习·flutter·华为·harmonyos
KKei16382 天前
Flutter for OpenHarmony 编程技能树APP技术文章
flutter·华为·harmonyos