本人的mac环境:
- MacOS Catalina
- 终端为 zshell
一、安装 Homebrew 过程
官网的下载地址你懂的,所以我们使用国内源就可以了,复制下面命令到终端
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
二、升级openssl
先看版本
openssl version
install openssl
brew install openssl
brew upgrade openssl
打开并写入
open .zshrc
export PATH="/usr/local/opt/openssl/bin:$PATH"
执行
source ~/.zshrc
再次查看
which openssl
openssl version
三、到这里,openssl就更新完成了,下面安装/更新rvm
Ruby Version Manager(RVM) 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。
ruby-china中的 rvm 相关
注意: 直接使用rvm官网的安装方式, 会提示各种网络错误, 这里用一个取巧的办法
附上这位小伙伴给出的解决方案, 在此特别感谢
MacOS Catalina安装CocoaPods时遇到rvm安装报错curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection
解决方案
- 浏览器打开
get.rvm.io
,打不开的话就挂代理 -
cmd+A
复制全部内容 - 命令行输入
cd Desktop
进入桌面 - 输入
touch install.sh
创建脚本文件 - 输入
vim install.sh
打开编辑,粘贴进去。切记不要从网页直接导出文件然后改后缀 - 按下
Esc
退出编辑模式 - 按下
:wq
保存并退出 - 把
install.sh
文件拖入终端执行,如果提示Permission denied
权限问题就输入chmod 777
然后拖入 install.sh 文件,然后再拖入一遍执行 - 然后终端应该会显示成功了, 执行
source ~/.zshrc
, 最后输入rvm -v
能出现版本号就成功了
四、使用 rvm 安装 Ruby
安装其他版本 Ruby 原因:
- 虽然 macOS 自带了一个 ruby 环境,但是是系统自己使用的,所以权限很小,只有 system。而/Library 目录是 root 权限,所以很多会提示无权限。
- 使用自带ruby更新, 管理不方便
- 一系列无原因的报错
列出已知的 Ruby 版本
rvm list known
安装最新的版本, 以 3.0.0 为例
rvm install 3.0.0
切换 Ruby 版本并设置为默认版本,这样一来以后新打开的控制台默认的 Ruby 就是这个版本
rvm use 3.0.0 --default
注意: 不设置为默认的话, 新开的终端可能会提示一个警告, 有警告强迫症的小伙伴这里设置为默认即可
查询已经安装的 ruby
rvm list
卸载一个已安装版本
rvm remove 1.8.7
注意: 网上有小伙伴说最好不要删除系统自带的 ruby, 以免出现问题
ps:
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
.zshrc 同理
五、更新升级 Gem 版本和安装 CocoaPods
此部分转自<Cocoapods使用教程>
替换ruby源
查看ruby源
gem sources -l
默认情况下,终端会显示下面:
*** CURRENT SOURCES ***
https://rubygems.org/
当然这个源在墙内是访问不到的,所以要更换到ruby-china的镜像
- 移除掉原有的源
gem sources --remove https://rubygems.org/
- 淘宝的源已经不更新维护了,现在使用ruby-china的源哦
gem source -a https://gems.ruby-china.com
- 验证是否替换成功
gem sources -l
如果显示下面输出就说明正确:
*** CURRENT SOURCES ***
https://gems.ruby-china.com
更新升级 Gem 版本
Gem是管理Ruby库和程序的标准包,如果它的版本过低也可能导致安装失败,解决方案自然是升级Gem,执行下述命令即可:
// 更新升级gem,国内需要切换源
gem update --system
安装 CocoaPods
CocoaPods是基于ruby ecosystem的,需要ruby环境,使用ruby的gem命令。
gem install cocoapods
// MacOS 10.11以后用此命令
gem install -n /usr/local/bin cocoapods
如果出现以下错误:
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/ffi/ffi.h:269:1: note: 'ffi_prep_closure' declared hereffi_prep_closure(^1 error generated.make: *** [Function.o] Error 1make failed, exit code 2
解决方法:删除目录下的 MacOSX10.14.sdk 即可
六、使用 CocoaPods
pod install 等命令
如果出现以下错误:
LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443 或者 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 60
解决方法:VPN开启全局代理, 重新 pod install
七、卸载CocoaPods
查看 pod 路径
which pod
卸载所有版本
gem uninstall cocoapods
查看 cocoapods 是否还有残余内容
gem list --local | grep cocoapods
如果显示如下:
cocoapods-core (0.39.0)
cocoapods-downloader (0.9.3)
cocoapods-plugins (0.4.2)
可卸载 cocoapods 残余内容, 示例:
gem uninstall cocoapods-core
完结, 撒花~~~~~~~
最后补充一些常用指令
ruby rvm
$ ruby -v # 查看ruby 版本
$ rvm list known # 列出已知的 ruby 版本
$ rvm install 2.3.0 # 选择指定 ruby 版本进行更新
$ rvm get stable # 更新 rvm
$ rvm use 2.2.2 # 切换到指定 ruby 版本
$ rvm use 2.2.2 --default # 设置指定 ruby 版本为默认版本
$ rvm list # 查询已安装的 ruby 版本
$ rvm remove 1.9.2 # 卸载移除 指定 ruby 版本
$ curl -L https://get.rvm.io | bash -s stable # 安装 rvm 环境
$ curl -sSL https://get.rvm.io | bash -s stable --ruby # 默认安装 rvm 最新版本
$ curl -sSL https://get.rvm.io | bash -s stable --ruby=2.3.0 # 安装 rvm 指定版本
$ source ~/.rvm/scripts/rvm # 载入 rvm
Gem
$ gem -v # 查看 gem 版本
$ gem source # 查看 gem 配置源
$ gem source -l # 查看 gem 配置源目录
$ gem sources -a url # 添加 gem 配置源(url 需换成网址)
$ gem sources --add url # 添加 gem 配置源(url 需换成网址)
$ gem sources -r url # 删除 gem 配置源(url 需换成网址)
$ gem sources --remove url # 删除 gem 配置源(url 需换成网址)
$ gem update # 更新 所有包
$ gem update --system # 更新 Ruby Gems 软件
$
$ gem install rake # 安装 rake,从本地或远程服务器
$ gem install rake --remote # 安装 rake,从远程服务器
$ gem install watir -v 1.6.2 # 安装 指定版本的 watir
$ gem install watir --version 1.6.2 # 安装 指定版本的 watir
$ gem uninstall rake # 卸载 rake 包
$ gem list d # 列出 本地以 d 打头的包
$ gem query -n ''[0-9]'' --local # 查找 本地含有数字的包
$ gem search log --both # 查找 从本地和远程服务器上查找含有 log 字符串的包
$ gem search log --remoter # 查找 只从远程服务器上查找含有 log 字符串的包
$ gem search -r log # 查找 只从远程服务器上查找含有log字符串的包
$
$ gem help # 提醒式的帮助
$ gem help install # 列出 install 命令 帮助
$ gem help examples # 列出 gem 命令使用一些例子
$ gem build rake.gemspec # 把 rake.gemspec 编译成 rake.gem
$ gem check -v pkg/rake-0.4.0.gem # 检测 rake 是否有效
$ gem cleanup # 清除 所有包旧版本,保留最新版本
$ gem contents rake # 显示 rake 包中所包含的文件
$ gem dependency rails -v 0.10.1 # 列出 与 rails 相互依赖的包
$ gem environment # 查看 gem 的环境
$
$ sudo gem -v # 查看 gem 版本(以管理员权限)
$ sudo gem install cocoa pods # 安装 CocoaPods(以管理员权限)
$ sudo gem install cocoapods # 安装 CocoaPods(以管理员权限)
$ sudo gem install cocoapods --pre # 安装 CocoaPods 至预览版(以管理员权限)
$ sudo gem install cocoapods -v 0.39.0 # 安装 CocoaPods 指定版本(以管理员权限)
$ sudo gem update cocoapods # 更新 CocoaPods 至最新版(以管理员权限)
$ sudo gem update cocoapods --pre # 更新 CocoaPods 至预览版(以管理员权限)
$ sudo gem uninstall cocoapods -v 0.39.0 # 移除 CocoaPods 指定版本(以管理员权限)
pod
1. pod setup
将所有第三方的Podspec索引文件更新到本地的~/.cocoapods/repos目录下,更新本地仓库。
2. pod repo update
执行 pod repo update更新本地仓库,本地仓库完成后,即可搜索到指定的第三方库,作用类似pod setup。不过这个命令经常不单独调用。比如执行pod setup、pod search、pod install、pod update会默认执行pod repo update
3. pod search xxx
查找某一个开源库。查找开源库之前,默认会执行pod repo update指令
4. pod list
列出所有可用的第三方库.现在已经2.4W+了.还在不断地增长
5. pod install
会根据Podfile.lock文件中列举的版本号来安装第三方框架
如果一开始Podfile.lock文件不存在, 就会按照Podfile文件列举的版本号来安装第三方框架
安装开源库之前, 默认会执行pod repo update指令
6. pod update
将所有第三方框架更新到最新版本, 并且创建一个新的Podfile.lock文件
安装开源库之前, 默认会执行pod repo update指令
7. pod install --no-repo-update
8. pod update --no-repo-update
安装开源库之前, 不会执行pod repo update指令
网友评论