由于ffi问题,我在M1 MacBook上运行“pod安装”失败,如下所述。
我遵循了一些解决方法(我想我以不同的顺序尝试了所有方法),但现在我得到了一个稍微不同的错误:
LoadError - dlopen(/opt/homebrew/lib/ruby/gems/3.0.0/gems/ffi-1.15.0/lib/ffi_c.bundle, 9): no suitable image found. Did find:
/opt/homebrew/lib/ruby/gems/3.0.0/gems/ffi-1.15.0/lib/ffi_c.bundle: mach-o, but wrong architecture
/opt/homebrew/lib/ruby/gems/3.0.0/gems/ffi-1.15.0/lib/ffi_c.bundle: mach-o, but wrong architecture - /opt/homebrew/lib/ruby/gems/3.0.0/gems/ffi-1.15.0/lib/ffi_c.bundle
看来我现在有了ffi,但架构不对?我该怎么解决这个问题?在Rosetta模式下运行/不运行终端时会发生这种情况。
顺便说一句,其中一个提议的变通办法对我来说没有成功。当我尝试时:
sudo arch -x86_64 gem install ffi
我得到:
arch: posix_spawnp: gem: Bad CPU type in executable
不确定这是否相关。
我同意Datasun的回答。但是我设法按照大致相同的步骤给出了一个有效的结果,我认为更好或一样好。我在终端运行了这些行:
brew uninstall --ignore-dependencies ruby
然后呢
sudo gem uninstall cocoapods
sudo gem uninstall cocoapods-core
sudo gem uninstall cocoapods-downloader
在此之后,我想自制cocoapods,所以我使用:
brew install cocoapods
(您可能需要使用重新安装)
正如Datasun所说我移除了cocoapods
gem list --local | grep cocoapods | awk '{print $1}' | xargs sudo gem uninstall
然后运行:
brew remove rbenv
sudo rm -rf ~/.rbenv
sudo arch -x86_64 gem install ffi
sudo arch -x86_64 gem install cocoapods
brew install rbenv
rbenv install 3.0.1
rbenv global 3.0.1
pod install
没有任何问题。
回答我自己的问题。我通过卸载有问题的Ruby版本和CocoaPods修复了ffi问题,然后我使用-x86_64拱重新安装ffi和CocoaPods。
以下是我为回到工作状态(以及为外国金融机构应用M1变通办法)所做的步骤:
>
卸载Ruby时使用:brew卸载Ruby--force
卸载CocoaPods。首先,尝试使用gem list--local|grep cocoapods
列出所有CocoaPods版本/组件。然后一个接一个地卸载它们,在我的情况下:
sudo gem卸载cocoapods
sudo gem卸载cocoapods-core
sudo gem卸载cocoapods-Downloader
等。
sudo arch-x86_64gem install ffi
sudo arch-x86_64gem安装cocoapods
完成后,我可以按预期运行pod install
。请注意,我一直在标准模式下打开终端-不需要Rosetta。
我有一个Flutter项目,我正试图在iOS上运行。它在我的基于英特尔的Mac电脑上正常运行,但在我的新的基于苹果硅的M1 Mac电脑上,它无法安装吊舱。 基于Github解决方案,我尝试使用rosetta运行Terminal,但问题仍然是:https://github.com/CocoaPods/CocoaPods/issues/9907#issuecomment-655870749 意识到现在
我刚刚尝试在Apple Mac Pro上运行Apache Flink的基本示例,新的M1处理器使用Rosetta 2兼容层。 不幸的是,它在以下堆栈跟踪中失败: 所以我的问题是,有人让它运行了吗?有可能在苹果硅上执行Flink工作吗? 编辑(13.04.2021)顺便说一句:使用Rosetta兼容层运行时发生此错误。因此,不幸的是,这并不能解决当前的问题。 编辑(2021年4月14日,回应理查德·
在我之前的基于英特尔的Mac电脑上,我曾经包括 在我的shell资源文件中。新的基于ARM的Apple芯片上的正确编译标志是什么?????似乎还没有很多资源,任何指针都非常感谢!
新的Xcode 12是否支持为不在新的Apple Silicon上运行的计算机制作应用程序?我想知道这一点,因为我需要为自己制作一个新的应用程序。
我正在开发具有金属计算功能的人工智能应用程序。如从Metal Debugger捕获的以下图片所示:预览图片错误,而附件视图中的图片正确。最终结果与预期的预览图片相同。 此错误没有出现在x86_64Macbook中,而是出现在M1 Macbook中。我认为将您的Metal应用程序带到Apple硅Mac中可能提到了一些问题(例如并发读取)。 如何调试它?
是否需要专门发布OpenJDK来支持新的苹果M1芯片? 我看到目前有下载用于macOS/OS的JDK