我在Mac上执行了常规的flutter run
,今天针对我的iPhone模拟器,并遇到了这些错误。
Error output from CocoaPods:
↳
dyld: lazy symbol binding failed: Symbol not found: _ffi_prep_closure_loc
Referenced from: /Users/toure/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle
Expected in: /usr/lib/libffi.dylib
dyld: Symbol not found: _ffi_prep_closure_loc
Referenced from: /Users/toure/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle
Expected in: /usr/lib/libffi.dylib
您如何解决dyld: Symbol not found: _ffi_prep_closure_loc
错误?
答案 0 :(得分:3)
我发现埋在github issue中的修复程序。
在Mac上运行此命令即可解决问题。
gem uninstall ffi
brew reinstall libffi
export LDFLAGS="-L/usr/local/opt/libffi/lib"
export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"
gem install ffi
我决定分享此内容,因为问题标题中的错误与我得到的错误不同。希望这可以节省一些时间。
答案 1 :(得分:0)
我能够通过使用以下标志重新安装该实用程序来解决此问题:
gem install ffi -- --disable-system-libffi
在this Medium article中找到了完整的解释。