CocoaPods的使用和安装

SuperPoint与SuperGlue的C++ TensorRT工程化实战:从理论到部署的完整指南 本文详细介绍了如何将SuperPoint和SuperGlue算法通过C++和TensorRT进行工程化部署,从模型准备、格式转换到TensorRT引擎构建和C++推理实现。通过性能优化技巧和实际应用案例,展示了在边缘设备上实现实时特征匹配的完整流程,显著提升处理速度与效率。 阅读详情

 

  1. CocoaPods概念
    1. CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具。用 Ruby 写的,并划分成了若干个 Gem 包可以节省设置和更新第三方开源库的时间,将第三方的依赖库统一管理起来,配置和更新只需要通过简单的几行命令即可完成。
    2. 执行 pod update , CocoaPods 就会自动将这些第三方开源库的源码下载下来,并且为我们的工程设置好相应的系统依赖和编译参数。
  2. CocoaPods原理
    1. 下载原理

格式:

pod '依赖名', :git => '依赖项目地址', :branch => '分支'

         pod '依赖名', :git => '依赖项目地址', :tag => '分支'

说明:

当使用Cocoapods导入私有库时:

Cocoapods先是根据:git => ‘git@xxx.git‘ 找到对应的git仓库;

然后根据:tag => ‘1.0.0’定位到对应tag的提交,或者根据 :branch => ‘develop’ 定位到对应分支的提交,如果没有注明Pod依赖包版本则定位到最后一次提交;

然后在这次提交中检索后缀为.podspec的文件;

然后验证name是否与podfile中的一致,如果不一致则install会报错;

验证成功后,就会根据Podspec中的s.source_files找到需要导入的代码文件,并通过其他的的数据找到对应的配置文件或资源文件等;

最后,将其下载到本地项目中。

当使用Cocoapods导入共有库时:

共有库要将podspec文件上传到cocoapods, 在导入的时候通过名字React去cocoapods匹配对应的podspec;

然后根据git地址找到对应的仓库和对应的版本;

然后去匹配新的podspec;

后面流程同私有库

                           

    1. 集成原理
      1. 当所有的依赖库都下载完后,Cocoapods会将所有的依赖库都放到另一个名为Pods的项目中,然后让主项目依赖Pods项目
      2. 这样,源码管理工作都从主目录移到了Pods项目中。Pods项目最终会编译成为一个名为libPods.a的文件,主项目只要依赖这个.a文件即可
      3. 对于资源文件,Cocoapods提供了一个名为Pods-resource.sh的bash脚本,该脚本在每次项目编译的时候都会执行,将Pods依赖库的各种资源文件复制到目标目录中
      4. Cocoapods还通过一个名为Pods.xcconfig的文件来在编译时设置所有的依赖和参数

 

    1. 版本控制原理
      1. 当执行完pod install之后,cocoapods会生成一个podfile.lock的文件
      2. podfile.lock文件最大的用处在于多人开发。如果你没有在podfile中指定pods版本pod ‘React’,那么默认为获取当前React依赖库的最新版本
      3. 当团队中的某个人执行完pod install命令后,生产的podfile.lock文件就记录下了当时最新pods依赖库的版本,这时团队中的其他人check下来这份包含podfile.lock文件的工程以后,再去执行pod install命令时,获取下来的pods依赖库的版本和最开始用户获取到的版本一致
      4. 如果没有podfile.lock文件,后续所有用户执行pod install命令都会获取最新版本的React,这就可能造成一个团队使用的依赖库版本不一致,这对团队协作来说绝对是个灾难
  1. CocoaPods核心组件
    1. CocoaPods/CocoaPods

这是面向用户的组件,每当执行一个 pod 命令时,这个组件将被激活。它包括了所有实用 CocoaPods 的功能,并且还能调用其它 Gem 包来执行任务。

    1. CocoaPods/Core

Core Gem 提供了与 CocoaPods 相关的文件(主要是 Podfile 和 Podspecs)的处理

      1. Podfile:该文件用于配置项目所需要的第三方库,它可以被高度定制。
      2. Podspecs:该文件描述了一个库将怎样被添加进工程中。.podspec 文件可以标识该第三方库所需要的源码文件、依赖库、编译选项,以及其他第三方库需要的配置
    1. CocoaPods/Xcodeproj

负责处理工程文件,它能创建以及修改 .xcodeproj 文件和 .xcworkspace 文件. 它也可以作为一个独立的包使用,当你要编写修改项目文件的脚本时,可以考虑使用 CocoaPods/Xcodeproj

    1. 与CocoaPods相关的两个目录
      1. ~/.CocoaPods/repos/: 这个目录存储远端的 podspec 文件到本地。
      2. ~/Library/Caches/CocoaPods/: 这个目录就是缓存文件的存储目录。

 

  1. CocoaPods安装
    1. 替换源

CocoaPods 是基于 ruby ecosystem 的,需要 ruby 环境,使用 ruby 的 gem 命令。所以我们的系统要有 ruby 环境

而 Mac 系统默认会安装好 ruby 环境,可以在终端输入 $gem sources -l 命令查看系统 ruby 默认源为 https://rubygems.org/,但这个源在国内是访问不到的,所以需要更换 ruby 镜像。

我们可以使用 ruby-china 的源https://gems.ruby-china.com 

      1. 移除系统 ruby 默认源

$gem sources --remove https://rubygems.org/

      1. 使用新的源

$gem sources –a https://gems.ruby-china.com

      1. 验证是否替换成功

$gem sources -l

 

    1. 安装 CocoaPods
      1. 选择版本

安装最新版本: $sudo gem install –n /usr/local/bin CocoaPods

安装指定版本: $sudo gem install –n /usr/local/bin CocoaPods –v 1.0.0

安装最新的release beta版本: $sudo gem install –n /usr/local/bin CocoaPods --pre

      1. 安装

$pod setup

Pod setup命令所有第三方的 Podspec 索引文件更新到本地的 ~/.CocoaPods/repos 目录下。

所有的第三方开源库的 Podspec 文件都托管在 https://github.com/CocoaPods/Specs 管理,我们需要把这个 Podspec 文件保存到本地,这样才能使用命令 pod search 来搜索一个开源库。

注意:首次执行时间比较久。

结果:

         没执行 pod setup:用户目录下找不到 .CocoaPods/repos路面

         执行过,没成功: 会创建 .CocoaPods/repos目录,但为空

执行了,成功:说明把 GitHub 上的 Podsepc 文件更新到了本地,那么会创建~/.CocoaPods/repos 目录,并且 repos 目录里有一个 master 目录,这个 master 目录保存的就是 GitHub 上所有第三方开源库的 Podspec 索引文件。

                            验证:

                                     $pod --version

 

  1. CocoaPods 使用
    1. 常用命令
      1. $pod setup

将所有第三方的 Podspec 索引文件更新到本地的 ~/.CocoaPods/repos/ 目录下,更新本地仓库。

      1. $pod repo update

执行 pod repo update 更新本地仓库,本地仓库完成后,即可搜索到指定的第三方库,作用类似 pod setup。

不过这个命令经常不单独调用。比如执行 pod setup、pod search、pod install、pod update 会默认执行 pod repo update。

      1. $pod search 开源库: 查找某个开源库
      2. $pod list: 列出所有可用的第三方库,现在已经 2.4W+ 了,还在不断地增长。
      3. $pod install

根据 Podfile.lock 文件中列举的版本号来安装第三方框架,如果一开始 Podfile.lock 文件不存在,就会按照 Podfile 文件中列举的版本号来安装第三方框架。

如果检查到当前三方库已经有的话,那就不会去下载了。

$pod install --no-repo-update : 安装开源库之前,不会执行 pod repo update指令

      1. $pod update

将所有第三方框架更新到最新版本,并且创建一个新的 Podfile.lock 文件。

无论当前三方库是否在项目中已经存在,都会重新下载更新。

$pod update --no-repo-update : 更新开源库之前,不会执行 pod repo update 指令

 

FFmpeg视频编码的流程详解及参考demo 本文主要讲解FFmpeg的视频编码的具体流程,API使用。最后再以一个非常简单的demo演示将一个yuv数据文件编码为H264的视频文件,也就是YUV编码为H264。 阅读详情

相关推荐

ROS开发者的福音:用Anaconda虚拟环境解决Python包冲突(附完整配置流程)

本文为ROS开发者提供了使用Anaconda虚拟环境解决Python包冲突的完整方案。通过分析冲突根源,详细介绍了Miniconda安装、专用环境创建以及核心桥梁包的配置流程,并阐述了“混合环境运行”与“纯虚拟环境构建”两种实战工作流,帮助开发者实现ROS核心与特定Python库的和谐共存,从而提升开发效率和项目可维护性。

weixin_28835789的博客 338

ios 改变html的视频url地址,ios 修改pod sdk地址,指定branch,实现localHtmlString的加载...

Show commentsView fileEdit fileDelete file@@ -52,6 +52,8 @@执行 `npm run serve` 运行web(目前未详细适配)。(推荐chrome,调试模式下手机模式)```## 下载### [Apk下载链接](https://www.pgyer.com/K5kU)Show commentsView fileEdit fileDelete ...

weixin_39837207的博客 264

STM32F407+LWIP实战:手把手教你移植mbedtls库实现Modbus TCP双向认证

本文详细介绍了如何在STM32F407微控制器上移植mbedtls库,结合LWIP协议栈实现Modbus TCP的双向认证功能。通过TLS 1.2加密通道,有效提升工业物联网通信的数据安全性,涵盖证书管理、内存优化及性能调优等关键步骤,为嵌入式系统开发者提供了一套完整的解决方案。

weixin_28721917的博客 516

Cocoapods的Podfile使用

Cocoapods的Podfile使用 对于第三方库集成,现在最受欢迎的就是基于Ruby语言实现的Cocoapods,可以很方便的管理引入库,当然你也可以使用Swift Package Manager 或者 Carthage。 现在我们来看看有哪些使用姿势。 如何创建Podfile 创建Podfile文件有很多种方式,最简单的方式应该是打开终端进入项目路径,执行pod init命令,会自动添加ta......

小桥流水哗啦啦,iOS Coder 哒哒哒 8483

【实战解析】Ubuntu双网卡冲突:如何解决同一网段下网关无法访问及上网问题

本文深入解析Ubuntu服务器双网卡配置在同一网段时引发的路由冲突问题,导致网关无法ping通及无法上网。通过分析路由表与Metric值原理,提供使用route命令调整优先级及修改Netplan配置文件的实战解决方案,确保主次路由明确,一劳永逸解决网络冲突。

f9g0h的博客 280

数字IC设计——功耗分析

功耗是数字IC芯片的一个重要指标

知识,既贵,又便宜。 9359

新版本CocoaPods安装

自己留存一份,及时更新,省得每次搜索。开始吧~1. (可选)如果需要安装最新版本的pod,更新RubyGemgem -v查看当前Gem版本 sudo gem update --system 可能需要翻墙支持也可以选择使用RVM安装多版本Ruby。2. 更换Ruby源早期常用的几个源都已经失效,包括后来的https淘宝源。目前使用https://gems.ruby-china.org/gem so

烂笔头 1289

OpenMVS :用 colmap制作自己的数据集 重建(用colmap计算位姿,将位姿转为MVS需要的格式)

数据集制作主要是在windows进行,比较方便。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 3325

CocoaPods本地私有库、远程私有库使用整理

CocoaPods发布框架到远程公有库 1.编写代码~上传远程仓库git init git add . git commit -m '提交到本地分支'//关联远程仓库 git remote add origin 远程仓库url //提交代码到远程仓库 git push origin master//tag git tag //查看版本标签 git tag -a 1.0.0 -m '1.0.0版本完成

木木不 8021

开发simulink 以及stm32半物理仿真碰到的问题,以及处理方法,Error:External Mode Open Protocol Connect command failed(实测有用)

串口实现的,但是在测试的时候发现,这个串口可以正常发送和接收数据,但是一旦把这个串口只让其进行版物理仿真就报错。直接刷写程序是可以的,最后查到问题了。我要实现半物理仿真,就是通过matlab实现可以直接控制stm32板子,实际上是通过xcp on。然后点击simulink上的观测按钮就可以直接和stm32平台进行通讯了。3,还是使用串口3,但是重新需要设置一下com口,因为重新插拔了一下,按照这个设置方法就可以。2,重新加载ioc文件。

pvmsmfchcs的博客 1498

最适合入门的100个深度学习项目

本专栏整理了《PyTorch深度学习项目实战100例》,内包含了各种不同的深度学习项目,包含项目原理以及源码,每一个项目实例都附带有完整的代码+数据集。

优快云 精品推荐 12万+

pod指定路径下载第三方库

pod指定路径下载第三方库 pod 版本库名, :git => 版本库地址 pod 'xxx' , :git => 'https://github.com/xxx/xxx_ios.git' 如果下载下来发现缺少了文件,应该是未指定版本号,使用pod+路径+版本号下载 pod 'xxx' , :git => 'https://github.com/xxx/xxx_ios.git' ...

竹毛言己 5692

“反激电源”是AC/DC隔离电源还是DC/DC隔离电源?

所以在一些场景,我们的输入电压是一个DC,但是我们仍然需要隔离电源的需求,我们就会只采用图9.2的右半部分。在这个场景下“反激电源”是DC/DC。所以此AC/DC的本质是将AC变成高压的DC之后,用带隔离变压器的反激式开关电源产生一个隔离的、稳定的直流电压。一般在讲述各种电源的拓扑的文章和书籍都是在讲述AC/DC的电源拓扑分类的时候,讲述Flyback。反激式开关电源是指使用反激高频变压器隔离输入输出回路的开关电源,反激式隔离变压器开关电源重点表述的是开关电源包含变压器的拓扑结构。

qq_43416206的博客 1290

CocoaPods 安装使用

Java中的包管理有Maven,Android中有Gradle,而iOS常用的包管理工具则有Cocopods,如果不使用包管理,则需要将库文件手动拷贝,并不好管理包依赖和版本升级。CocoaPods是用 gem ruby实现的,要想使用它,首先需要有 gem ruby的环境,且 Mac 的 OS X系统默认已经可以运行 ruby。查询完成后输入wq,返回之前终端页面。​​​​​​​是 MacOS 下的软件包的管理器,通过它可以安装很多开源的或第三方的软件。

yubingdian2011的专栏 1487

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

CocoaPods的安装和使用

CocoaPods是一个可以帮你集中管理第三方库的开源项目,运行在Ruby的环境下,基于GitHub托管优势,你可以很方便的查阅目前依赖于CocoaPods的资源. 并且,CocoaPods是可靠,稳定,安全的.可以为你在使用第三方库资源时节省大部分的配置和部署时间.更专心的专注于Coding!

余书懿 6万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

CocoaPods 安装

在iOS开发中,不可避免地要使用第三方开源库,而CocoaPods就是一个负责管理iOS项目中第三方开源库的工具,其作用类似于Android的gradle或者前端的npm。CocoaPods的项目源码在Github上管理。 以下是最新的CocoaPods安装教程(2019年8月) 1、查看当前Ruby版本 ruby -v 2、升级Ruby环境,首先需要安装rvm。 curl -L get.rvm...

xiangzhihong8的专栏 691

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Mac CocoaPods 安装和使用

前言 最近对基础库做了封装,使用CocoaPods做动态下载更新。顺便整理了一份CocoaPods安装和使用说明。 安装 第一步安装ruby环境 一般 Mac OS本身自带Ruby,查看一下Ruby版本如果版本过低需要升级一下版本。 查看当前的ruby的版本(这里的版本是2.2.4 完全够用了) ruby -v 升级最新版的ruby 通过下面命令查看ruby最新版本...

DARKSang的专栏 2251

Xcode如何安装使用CocoaPods

打开访达,左上角的菜单里选择 前往 前往文件夹比如要打开 usr/local。

一如既往lz的博客 2778

CocoaPods安装

Ruby版本 1、CocoaPods的安装需要Ruby环境,Mac系统都自带Ruby,通过下面终端命令查看Ruby版本:ruby -v CocoaPods支持的Ruby最低版本是2.2.2,如果自己的版本低于2.2.2就需要更新升级Ruby: `sudo gem update --system` 更换Ruby镜像 Ruby默认的源地址是国外网络地址,通过下面终端命令查看当前镜像地址:gem sources -l ~$gem sources -l *** CURRENT SOUR.

从事前端,不断积累经验,学习新的技术。头像不是本人是莉莉崽(美貌、可爱集于一身的小姐姐,小仙女),一个宝藏博主,值得喜欢! 1774

Mac安装CocoaPods全教程

在安装CocoaPods之前,首先要在本地安装好Ruby环境。 首先是homebrew 的安装: 安装homebrew的方法非常简单,打开官方网站,在下面有一条安装指令: 将这条指令复制到终端就行了回车,中间需要回车继续,输入密码。 详细的安装步骤可以参考一下:http://blog.youkuaiyun.com/maojudong/article/details/7918291

Lee的专栏 1214

CocoaPods安装和使用

*CocoaPods安装 1. 替换ruby源 1.1 CocoaPods是基于ruby ecosystem的,需要ruby环境,使用ruby的gem命令。所以我们的系统要有ruby环境。然而Mac系统默认会安装好ruby环境。可在终端 ruby -v 查看ruby版本:输出如下图 1.2 查看ruby源, 终端输入 gem sources -l,显示如下:(现在镜像使用了https了,截图有点老,下面有改正) 如果你执行后,输出为: *** CURRENT SOURCES *** https://ge

xisan_10的博客 2375

CocoaPods安装和使用教程

http://code4app.com/article/cocoapods-install-usage CocoaPods安装和使用教程 Code4App 原创文章。转载请注明出处:http://code4app.com/article/cocoapods-install-usage 目录 CocoaPods是什么?如何下载和安装CocoaPods?如何使用CocoaPods?

wangyang2698341的专栏 6664

MacOS 安装 cocoapods

因为通过 brew 安装 库的时候,会执行 cleanup 清理掉旧版本的库,由于权限等问题,有时候 会报错。如果是低版本的系统或者终端,可能需要配置到 ~/.bash_profile,需要自己查看自己终端的配置。系统一般自带了 ruby 但是这个升级有些麻烦,我们不使用系统的。推荐方案是,此次安装禁用自动清理功能,使用安装命令如下。下面使用 HomeBrew 安装 cocoapods。到此 cocoapods 安装完成。在安装过程的日志中有类似如下日志。安装完成后可以手动执行命令清理。

lq 3105

Cocoapods的安装和使用

开篇先亮一遍文章——CocoaPods安装和使用教程。 可以了解下CocoaPods,当然里面的命令有些已经不能用了,原因围城,所以我才打算整理一下这一篇文章。 一、 删除之前的pod如果之前安装过Cocoapods,请先将之前的删除。1.删除目录下的pod 也可以commamd-shift-g前往文件夹中输入路径,前往文件夹手动删除。 rm -rf /usr/local/bin/pod2.查看

Tonyshng的博客 515

iOS CocoaPods安装和使用

Cocoapods安装步骤 1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPods时我们要访问cocoapods.org,用淘宝的RubyGems镜像来代替官方版本,执行以下命令: $ gem sources --remove https://

XLaws的博客 5200
上一篇: 云计算之kubernetes节点排错
下一篇: 图书1:富爸爸穷爸爸
mx_steve
博客等级 码龄8年 57粉丝 102原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值