今天使用cocoapod
安装MQTTClient
时报错了,我前两天还安装别的框架,没有报错正常的,短短几天时间就报错了,感觉应该不是什么版本问题,下面先看看报错信息
### Error
```
LoadError - cannot load such file -- ffi
:85:in `require'
:85:in `require'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/ethon-0.15.0/lib/ethon.rb:3:in `'
:85:in `require'
:85:in `require'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/typhoeus-1.4.0/lib/typhoeus.rb:2:in `'
:85:in `require'
:85:in `require'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/cdn_source.rb:440:in `download_typhoeus_impl_async'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/cdn_source.rb:372:in `download_and_save_with_retries_async'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/cdn_source.rb:365:in `download_file_async'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/cdn_source.rb:338:in `download_file'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/cdn_source.rb:284:in `ensure_versions_file_loaded'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/cdn_source.rb:208:in `search'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/source/aggregate.rb:83:in `block in search'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/source/aggregate.rb:83:in `select'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/source/aggregate.rb:83:in `search'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:416:in `create_set_from_sources'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:385:in `find_cached_set'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:360:in `specifications_for_dependency'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:165:in `search_for'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:274:in `block in sort_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:267:in `each'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:267:in `sort_by'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:267:in `sort_by!'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:267:in `sort_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:60:in `block in sort_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:77:in `with_no_such_dependency_error_handling'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:59:in `sort_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:754:in `push_state_for_requirements'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:288:in `push_initial_state'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:210:in `start_resolution'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:168:in `resolve'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/molinillo-0.8.0/lib/molinillo/resolver.rb:43:in `resolve'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:94:in `resolve'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/installer/analyzer.rb:1078:in `block in resolve_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/user_interface.rb:64:in `section'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/installer/analyzer.rb:1076:in `resolve_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/installer/analyzer.rb:124:in `analyze'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:416:in `analyze'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:241:in `block in resolve_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/user_interface.rb:64:in `section'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:240:in `resolve_dependencies'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:161:in `install!'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/command/install.rb:52:in `run'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/command.rb:52:in `run'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/bin/pod:55:in `'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/bin/pod:23:in `load'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/bin/pod:23:in `'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/bin/ruby_executable_hooks:22:in `eval'
/Users/lijinsong/.rvm/rubies/ruby-3.0.0/bin/ruby_executable_hooks:22:in `'
```
――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
[!] Oh no, an error occurred.
Search for existing GitHub issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=cannot+load+such+file+--+ffi&type=Issues
If none exists, create a ticket, with the template displayed above, on:
https://github.com/CocoaPods/CocoaPods/issues/new
Be sure to first read the contributing guide for details on how to properly submit a ticket:
https://github.com/CocoaPods/CocoaPods/blob/master/CONTRIBUTING.md
Don't forget to anonymize any private data!
Looking for related issues on cocoapods/cocoapods...
- Pod init fails miserably on M1 mac
https://github.com/CocoaPods/CocoaPods/issues/11376 [open] [1 comment]
5 weeks ago
- pod install error in M1 macbook.
https://github.com/CocoaPods/CocoaPods/issues/11042 [closed] [1 comment]
05 Nov 2021
- pod install --repo-update with LoadError - cannot load such file -- ffi_c
https://github.com/CocoaPods/CocoaPods/issues/10370 [closed] [3 comments]
31 May 2021
and 6 more at:
https://github.com/cocoapods/cocoapods/search?q=cannot%20load%20such%20file%20--%20ffi&type=Issues&utf8=✓
报错信息有点多哈,没事问题不大
解决:按照报错信息提示,运行下面的命令
gem install ffi --platform=ruby
运行结果显示如下,一般是成功了,然后我们在运行pod命令就可以了
Fetching ffi-1.15.5.gem
Building native extensions. This could take a while...
Successfully installed ffi-1.15.5
Parsing documentation for ffi-1.15.5
Installing ri documentation for ffi-1.15.5
Done installing documentation for ffi after 3 seconds
1 gem installed
我安装的时候其实也报了下面的这个错误,原因是我的网络太差导致的,换个WiFi重新运行pod命令就好了
[!] Error installing MQTTClient
[!] /usr/bin/git clone https://github.com/novastone-media/MQTT-Client-Framework.git /var/folders/8c/7yrbnnn10jl3dw2hh_ph72yw0000gn/T/d20220803-4253-q55dxh --template= --single-branch --depth 1 --branch 0.15.2
Cloning into '/var/folders/8c/7yrbnnn10jl3dw2hh_ph72yw0000gn/T/d20220803-4253-q55dxh'...
error: RPC failed; curl 56 LibreSSL SSL_read: Connection reset by peer, errno 54
error: 6831 bytes of body are still expected
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
收工