Cocoapods 最新 集成总结

2021-6-9更新:
Mac M1处理器在安装cocoapods时,会发生以下错误
LoadError - dlopen(/Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle, 0x0009): missing compatible arch in /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle - /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle
错误提示
LoadError - dlopen(/Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle, 0x0009): missing compatible arch in /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle - /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle
解决办法:
在应用程序-实用工具里,打开终端 显示简介
2.勾选以Rosetta方式打开


image.png
  1. 运行 sudo gem install cocoapods (之前安装过就略过)
  2. 运行 sudo gem install ffi
  3. 最后pod install

2021-5-25 更新 :换了M1芯片电脑 重新装了下cocoapods 记录一下
1621924123476.jpg

image.png

报错 :没有权限问题 在命令行语句执行前加sudo


背景:Mac OS Catalina 10.15.1 Xcode11.2.1

Cocoapods 版本:1.8.4

暴露问题:

    1、pod install 命令出现问题  

    2、trunk 分支问题 

    3、cocoapods 源不稳定问题 

解决:问题太多 决定卸载重装 记录流程。

卸载:

1、卸载cocoapods

问题1:在cocoapod 执行卸载 语句

sudo gem uninstall cocoapods 

的时候 While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.
改为:

sudo gem uninstall -n /usr/local/bin cocoapods

2、卸载本地cocoapods相关的插件
执行:

gem list --local | grep cocoapods

查询相关插件 如下图所示:


001.png

逐个删除相关插件:

sudo gem uninstall cocoapds-core
sudo gem uninstall cocoapods-deintegrate
sudo gem uninstall cocoapods-downloader
sudo gem uninstall cocoapods-plugins
sudo gem uninstall cocoapods-search
sudo gem uninstall cocoapods-stats
sudo gem uninstall cocoapods-trunk
sudo gem uninstall cocoapods-try
...

3、查看gem 更新ruby源地址

这里官方简易尽可能的使用比较新的RubyGems版本,建议2.6.x以上

//更新gem 
gem update --system # 这里请翻墙一下

//查询gem 版本 
gem -v

查看ruby源

gem sources -l

查询结果如下:

002.png

因为我电脑本身就是最新的ruby源就不重新装了 不是上图中的源 需要移除老的ruby源 更新成这个
语句如下:

//移除ruby源  XXXXXX代表你查出来的源地址
gem sources --remove XXXXXX

//添加新ruby源
gem sources --add https://gems.ruby-china.com

//查询是否更新成功 
gem sources -l

//确保只有 gems.ruby-china.com

4、安装Cocoapods

sudo gem install -n /usr/local/bin cocoapods

安装成功如下图所示:


003.png

5、执行pod setup

这步因为pod setup 克隆的镜像源 是国外的 so...换了个方式 用了国内的镜像 。(如果不换 pod setup 大概率不成功,或下一天可能,浪费时间,本人找了一天的替代源。)这里感谢下 CSDN的大佬的一篇文章,附上文章链接Pod setup 太慢终极解决办法

当我们去执行pod setup的时候,会发现那是一个相当的慢。估计一天的时间都浪费再这上面。这是因为使用的国外的镜像,只要使用国内的镜像就很好的解决了。

//查找repo 移除master文件
cd ~/.cocoapods/repos
pod repo remove master
//使用大佬给的国内镜像源
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git master

你会发现,那速度,老铁 6666...

这部分执行完后 就是cocoapods的使用了 不多做赘述 都比较熟悉了 我就简单的写下流程:

//cd 到项目路径下 
cd xxxxxx
//初始化pod
pod init
//编辑podfile
open Podfile
//编辑完成 
pod install

这里有个问题:
Cocoapods升级到v1.8后pod trunk发生异常
trunk Repo update failed


004.png

我新建立了个项目,集成了一个测试的demo, pod里只加了一个三方库 集成成功了。但是在自己的项目上出现了这个问题 。原因是自己项目里集成的第三方太多
解决方案 并不是网上说的把什么trunk删除 podfile上改source 而是链接不稳定的问题 遇到这种情况

需要把Podfile上的第三方库 需要一个一个的加三方库 然后一个一个的pod install 多试几次!!! 直到 pod install成功为止!

2020-05-13 更新:

最近打算把公司项目转成纯swift的 ,新建了个swift 的项目,cocoapods又出问题了 还是 报trunk Repo update failed问题 在podfile 加了个source :

source 'https://gitee.com/mirrors/CocoaPods-Specs.git'

完美解决。

问题二:pod install出现警告。

[!] The 168LogisticsSwiftTests [Debug] target overrides the ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES build setting defined in Pods/Target Support Files/Pods-168LogisticsSwift-168LogisticsSwiftTests/Pods-168LogisticsSwift-168LogisticsSwiftTests.debug.xcconfig'. This can lead to problems with the CocoaPods installation - Use the$(inherited)` flag, or
- Remove the build settings from the target.

网上给出的解决方法:

image.png

实际操作一遍 还是会出现警告

所以,先从这些警告入手, 进入工程项目文件夹 ->右键点击 .xcodeproj 文件 显示包内容 -> 打开 .pbxproj 文件 -> 文本搜索提示警告的内容 ’ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES’ -> 找到这些内容删除
然后输入 pod update 进行更新

解决了。具体为什么要删除这个配置 我百度了一下 没有找到能解释的文章 暂时先照着说的改一下 留待以后追究。

安装HomeBrew

官网地址 https://brew.sh/index_zh-cn

终端输入

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

不能用切换国内地址

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

选择数据源

——查看版本:brew -v
——安装软件:brew install 软件名
——搜索软件:brew search 软件名
——卸载软件:brew uninstall 软件名
——更新所有软件:brew update
——更新具体软件:brew upgrade 软件名
——显示已安装软件:brew list
——查看哪些已安装的程序需要更新: brew outdated
——显示包依赖:brew reps
——显示帮助:brew help
===========================================================================

2022-03-01 更新 :因为更新了系统,pod init 创建 Podfile报错:

Command```/usr/local/bin/pod init```
 Report* What did you do?* What did you expect to happen?* What happened instead?  

解决方法 :更新cocoapods

$ sudo gem update --system
$ sudo gem install cocoapods -n/usr/local/bin

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 207,113评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,644评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,340评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,449评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,445评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,166评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,442评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,105评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,601评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,066评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,161评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,792评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,351评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,352评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,584评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,618评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,916评论 2 344

推荐阅读更多精彩内容