2020年11月11日,苹果正式发布第一款用于Mac的自研电脑芯片M1。由于ARM架构的原因,目前还有相当一部分未升级ARM架构支持的Mac软件无法在M1芯片的Mac电脑上运行。如果你的应用是通用型的应用出现不兼容问题可以「勾选使用 Rosetta 打开」(Intel芯片默认方式)方式运行程序。

最近公司刚给配了一个新款的Mac mini,是2020款搭载苹果自研芯片M1的电脑。在安装开发环境时出现了一些问题:
Cocoapds 能够使用 ruby 正常安装,但是master源为0。使用新版安装方式cd ~/.cocoapods/repos提示无此路径。打开文件夹也没有找到.cocoapods文件,但是同目录下竟然多出了一个master文件夹。

显示隐藏文件
defaults write com.apple.finder AppleShowAllFiles -boolean true;killall Finder
隐藏文件
defaults write com.apple.finder AppleShowAllFiles -boolean false;killall Finder
也可以在空白桌面或访达中按下快捷键Command + Shift + .,网上有很多方法,大家可自行百度。

执行pod install会出错

### ErrorLoadError - dlsym(0x7ff8aa0382f0, Init_ffi_c): symbol not found - /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi.rb:6:in `rescue in <top (required)>'
/Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi.rb:3:in `<top (required)>'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
...
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[!] Oh no, an error occurred.Search for existing GitHub issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=dlsym%280x7ff8aa0382f0%2C+Init_ffi_c%29%3A+symbol+not+found+-+%2FLibrary%2FRuby%2FGems%2F2.6.0%2Fgems%2Fffi-1.13.1%2Flib%2Fffi_c.bundle&type=IssuesIf none exists, create a ticket, with the template displayed above, on:
https://github.com/CocoaPods/CocoaPods/issues/newBe sure to first read the contributing guide for details on how to properly submit a ticket:
https://github.com/CocoaPods/CocoaPods/blob/master/CONTRIBUTING.mdDon't forget to anonymize any private data!Looking for related issues on cocoapods/cocoapods...
Found no similar issues. To create a new issue, please visit:
https://github.com/cocoapods/cocoapods/issues/new

然后也给出了解决方案,让去GitHub上找答案。

GitHub上也解释了原因

  Currently, libffi +Ruby v2.6.0 seems to have some issues with Apple’s DTK. Multiple development tools, including Homebrew (ref Homebrew/brew#7857) seem to have issues working. Some have workarounds, but the core seems to be hidden somewhere in libffi (ref libffi/libffi#571)
  I will make sure to keep this issue up to date with fixes from libffi and anything else i can find.
  I received my DTK yesterday, and will try to create a fork of libffi and get it to build. As mentioned in the linked ffi issue, support for arm64 already exists, and may just need to be fixed to apply to DTK/macOS devices. Assuming I can get it to work, I will also create a fork for CP with the working version of libffi and try to get it to build.

  目前,libffi +Ruby v2.6.0似乎与苹果的DTK有一些问题。多种开发工具,包括Homebrew(参考Homebrew/brew#7857)似乎有问题工作。有一些变通方法,但核心似乎隐藏在libffi的某个地方(参考libffi/libffi#571)
  我将确保通过libffi和我能找到的任何修复程序来更新这个问题。
  我昨天收到了我的DTK,并将尝试创建一个libffi的分叉,并让它构建。正如在链接的ffi问题中提到的,对arm64的支持已经存在,可能只需要修复以应用于DTK/macOS设备。假设我可以让它工作,我还将用libffi的工作版本为CP创建一个分支,并尝试构建它。

最终解决方案如下:

打开访达->应用->实用工具->终端->右键点击终端->显示简介->勾选使用 Rosetta 打开,关闭终端,重新打开。

执行安装命令

sudo gem install cocoapods
sudo gem install ffi

也可以尝试其他方案,点击这里查看更多解决方案。



2021.02.27

用Xcode打包的时候出现错误 IPA processing failed

打开访达->应用->Xcode->右键点击Xcode->显示简介->勾选使用 Rosetta 打开,关闭Xcode,重新打开。

现在可以正常打包了!

如果没有Rosetta环境,可以尝试终端输入(我新装的电脑是带的,所以没有尝试)

/usr/sbin/softwareupdate --install-rosetta (root permission not required)/usr/sbin/softwareupdate --install-rosetta --agree-to-license (root permission required)
彩蛋:苹果自带Safari竟然自带翻译功能了,貌似是从Safari14之后才有的。在浏览器的网址右侧刷新按钮旁边。如果你的macOS系统是11并且Safari版本是14,没有这个按钮可以进行如下设置:

打开系统偏好设置->语言与地区->添加首选语言(中文和英文,只有中文是不能显示翻译按钮的),之前的版本好像也要选择地区为其他地区。

M1芯片安装CocoaPods问题相关推荐

  1. MacBook M1芯片 安装Centos8 教程(无界面安装)

    M1 安装Centos8 教程 MacBook Pro M1芯片 安装Centos8 教程(无界面安装) Centos8 支持M1芯片下载地址 0.Linux关机命令 1.安装截图 2.安装完成重启后 ...

  2. 解决M1芯片版本安装Sketch问题 M1芯片安装那个Sketch版本?Sketch已完美支持M1芯片安装 支持big sur系统

    最近入手的M1芯片的Mac,哈哈!还是公司年终赠送的,不过这款电脑和以往常规的intel芯片的架构似乎有些不同,主要是很多旧版本的软件用不了.之前搞定了M1芯片安装Adobe系列的软件,然后发现好多旧 ...

  3. 解决M1芯片无法安装AE闪退问题,AEcc2021中文直装版兼容M1芯片安装教程 M1安装方案

    Adobe After Effects 2021 mac M1版上线啦!ae2021 mac中文版是ae Mac的最新版本,全新优化专为Mac用户设计,让不可能变为可能.ae 2021 mac破解版下 ...

  4. 如何解决M1芯片安装PS 2021闪退、卡启动界面的问题?

    2021版Photoshop版M1可以使用了,具体怎么安装呢,本文将介绍m1芯片安装ps2021的方法.如果安装过错出现问题,本文将介绍M1 芯片安装 PS 2021 闪退.卡启动界面解决方法. 总共 ...

  5. mac m1芯片 安装 nvm 踩坑日记

    nvm 是什么? nvm 可以 管理 本地 node 版本,多个项目 使用 多个 不同版本的 node,完全是合理的存在,总不能用什么版本下载什么版本,不用的在卸载吧. 那么 nvm 就是一个很好用的 ...

  6. M1处理器安装 cocoapods

    公司配备了新的M1 处理器的Mac设备,可把我高兴坏了.设备环境搭建.从cocoapods 开始,真可谓是横拢地拉车-一步一个坎儿 我只说我遇到的情况. ①.安装 homebrow /bin/zsh ...

  7. 5月最新M1芯片安装PS2021和PS2020已更新M1芯片mac安装PS2021解决教程(附安装方法)

    众所周知,苹果推出的搭载M1芯片的MAC电脑是基于ARM架构设计的最新处理器,相比intel架构M1芯片有这更低的功耗和更强劲的处理性能,苹果推出的M1为了保证之前的英特尔架构的软件兼容性,使用了Ro ...

  8. 如何怎样在M1芯片Mac上安装PS?M1芯片安装Photoshop详细教学方法2021最新方法

    苹果公司在2020年发布了搭载AMR架构的M1芯片SOC集成处理器,因为架构的变更,相对于英特尔的处理器对很多旧版软件兼容性不是太好! 随着M1搭载M1芯片的MAC更新了最新系统,最新适配的M1的PS ...

  9. MacBookPro M1芯片安装brew

    目录 一.安装Rosetta2 二.安装brew 使用国内源安装 ​编辑 二.解决报错 1.修改安装包位置的环境变量 2.测试 安装brew之前需先安装Rosetta2,具体步骤如下: 一.安装Ros ...

最新文章

  1. nginx tomcat 负载
  2. 使用了JDK自带的jconsole查看Tomcat运行情况
  3. 华为交换机S3700清空配置方法
  4. Cesium.js学习第二天(立方体)
  5. [摘录]第五部分 经验谈(2)
  6. 18.Linux/Unix 系统编程手册(上) -- 目录与链接
  7. 为什么php在网页中不显示,为什么网页显示不出php代码_后端开发
  8. 高性能mysql之慎用BLOB与TEXT
  9. QQ文件中转站 发送给好友的功能 哪去了?
  10. 谎言,统计数据和供应商
  11. 软件工程——软件开发模型
  12. Review Board了解
  13. 计算广告——搜索广告技术初窥
  14. BUUCTF 每日打卡 2021-8-18
  15. 树莓派的ssh连接配置
  16. 小鲲Python嘎嘎炫~day2
  17. pc使用qq for android,腾讯QQ for Pad Android版
  18. 【Autopsy数字取证篇】Autopsy案例创建与镜像分析详细教程
  19. 电影分众发行 移动端电影院总观影达200万
  20. ChatGPT检测器(Detector)

热门文章

  1. 网站常用的五种布局方案
  2. 未来计算机网络在医学上的发展,论述计算机网络技术在医学技术中的发展和作用.doc...
  3. python爬虫解析库(Xpath、beautiful soup、Jsonpath)
  4. 通俗的解释卡尔曼滤波(Kalman Filter)以及其Python的实现
  5. 2021年G3锅炉水处理考试内容及G3锅炉水处理试题及解析
  6. 解决:IE浏览器打开就自动最小化,无法打开
  7. mockups 安装
  8. 网站攻防之CSRF和XSS跨站脚本攻击
  9. 一个简单的注册页面制作
  10. 自学JavaScript第一天- JS 基础