颤振:飞镖 FFI 找不到符号



我已按照标准Flutter FFI说明将libavcodec.dylib包含在Flutter项目中。

调用DynamicLibrary.open('libavcodec.59.dylib')执行时没有问题,并返回一个非负句柄地址,(我认为(这表示加载成功。

当我试图查找任何符号时,Flutter会抛出一个错误:

"[错误:flutter/lib/ui/ui_start_state.cc(209(]未处理的异常:无效参数:查找符号失败&";。

当我用各种符号名称调用providesSymbol()时,它总是返回false

有人知道为什么会发生这种情况吗?是否需要其他步骤来引导这样一个库?如何调试问题的根本原因

我认为这是根头文件。这是库的文档。

看起来dylib中的名称与C代码中的名称不太匹配。当我根据dylib中的名称查找符号时,它们会按预期解析。

我用来解决这个问题的工具如下:

nm -gU mylib.dylib

相关内容

  • 没有找到相关文章

最新更新