Mac (10.12.4)安装cocoapods

新的安装, Mac上已有ruby环境。

 

之前安装走的都是淘宝ruby镜像,现在这个镜像以更换为 https://gems.ruby-china.org/ 了(原因是直连不上国外ruby的镜像)

步骤: 1修改ruby镜像地址

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

gem sources -a https://gems.ruby-china.org/

 之后使用:检测是否成功替换镜像地址

gem sources -l

 

  出现以下为成功

*** CURRENT SOURCES ***

 

https://gems.ruby-china.org/

 

2.安装cocoapods

sudo gem install cocoapods

 出现错误提示:

ERROR:  While executing gem... (Gem::DependencyError)

 

  Unable to resolve dependencies: cocoapods requires cocoapods-core (= 1.2.1), cocoapods-downloader (< 2.0, >= 1.1.3), cocoapods-trunk (< 2.0, >= 1.2.0), molinillo (~> 0.5.7), ruby-macho (~> 1.1)

 

 

该错误可以通过升级ruby后解决

sudo  gem update  --system

   升级过程中

Updating rubygems-update

Fetching: rubygems-update-2.6.7.gem(100%)

Successfully installedrubygems-update-2.6.7

Parsing documentation forrubygems-update-2.6.7

Installing ri documentation forrubygems-update-2.6.7

Installing darkfish documentationfor rubygems-update-2.6.7

Installing RubyGems 2.6.7

RubyGems 2.6.7 installed

Parsing documentation forrubygems-2.6.7

Installing ri documentation forrubygems-2.6.7

 

=== 2.6.7 / 2016-09-26

 

Bug fixes:

 

* Install native extensions in thecorrect location when using the

  `--user-install` flag. Pullrequest #1683 by Noah Kantrowitz.

* When calling `Gem.sources`, loadsources from `configuration`

  if present, else use thedefault sources. Pull request #1699

  by Luis Sagastume.

* Fail gracefully when attemptingto redirect without a Location.

  Pull request #1711 by SamuelGiddins.

* Update vendored Molinillo to0.5.1. Pull request #1714 by

  Samuel Giddins.

 

=== 2.6.6 / 2016-06-22

 

Bug fixes:

 

* Sort installed versions to makesure we install the latest version when

  running `gem update--system`. As a one-time fix, run

  `gem update --system=2.6.6`.Pull request #1601 by David Radcliffe.

 

=== 2.6.5 / 2016-06-21

 

Minor enhancements:

 

* Support for unified Integer inRuby 2.4. Pull request #1618

  by SHIBATA Hiroshi.

* Update vendored Molinillo to0.5.0 for performance improvements.

  Pull request #1638 by SamuelGiddins.

 

Bug fixes:

 

* Raise an explicit error ifSigner#sign is called with no certs. Pull

  request #1605 by DanielBerger.

* Update`update_bundled_ca_certificates` utility script for directory

  nesting. Pull request #1583by James Wen.

* Fix broken symlink support in tarwriter (+ fix broken test). Pull

  request #1578 by CezaryBaginski.

* Remove extension directory before(re-)installing. Pull request #1576

  by Jeremy Hinegardner.

* Regenerate test CA certificateswith appropriate extensions. Pull

  request #1611 by rhenium.

* Rubygems does not terminate onfailed file lock when not superuser. Pull

  request #1582 by Ellen MarieDash.

* Fix tar headers with a 101character name. Pull request #1612 by Paweł

  Tomulik.

* Add Gem.platform_defaults toallow implementations to override defaults.

  Pull request #1644 byCharles Oliver Nutter.

* Run Bundler tests on TravisCI.Pull request #1650 by Samuel Giddins.

 

=== 2.6.4 / 2016-04-26

 

Minor enhancements:

 

* Use Gem::Util::NULL_DEVICEinstead of hard coded strings. Pull request #1588

  by Chris Charabaruk.

* Use File.symlink on MS Windows ifsupported. Pull request #1418

  by Nobuyoshi Nakada.

 

Bug fixes:

 

* Redact uri password from erroroutput when gem fetch fails. Pull request

  #1565 by Brian Fletcher.

* Suppress warnings. Pull request#1594 by Nobuyoshi Nakada.

* Escape user-supplied contentserved on web pages by `gem server` to avoid

  potential XSSvulnerabilities. Samuel Giddins.

 

=== 2.6.3 / 2016-04-05

 

Minor enhancements:

 

* Lazily calculate Gem::LoadErrorexception messages. Pull request #1550

  by Aaron Patterson.

* New fastly cert. Pull request#1548 by David Radcliffe.

* Organize and cleanup SSL certs.Pull request #1555 by James Wen.

* [RubyGems] Make deprecationmessage for paths= more helpful. Pull

  request #1562 by SamuelGiddins.

* Show default gems when using"gem list". Pull request #1570 by Luis

  Sagastume.

 

Bug fixes:

 

* Stub ordering should beconsistent regardless of how cache is populated.

  Pull request #1552 by AaronPatterson.

* Handle cases when the @@stubsvariable contains non-stubs. Pull request

  #1558 by Per Lundberg.

* Fix test on Windows forinconsistent temp path. Pull request #1554 by

  Hiroshi Shirosaki.

* Fix `Gem.find_spec_for_exe` picksoldest gem. Pull request #1566 by

  Shinichi Maeshima.

* [Owner] Fallback to email anduserid when owner email is missing. Pull

  request #1569 by SamuelGiddins.

* [Installer] Handle nil existingexecutable. Pull request #1561 by Samuel

  Giddins.

* Allow two digit version numbersin the tests. Pull request #1575 by unak.

 

=== 2.6.2 / 2016-03-12

 

Bug fixes:

 

* Fix wrong version of gemactivation for bin stub. Pull request #1527 by

  Aaron Patterson.

* Speed up gem activation failures.Pull request #1539 by Aaron Patterson.

* Fix platform sorting in theresolver. Pull request #1542 by Samuel E.

  Giddins.

* Ensure we unlock the monitor evenif try_activate throws. Pull request

  #1538 by Charles OliverNutter.

 

 

=== 2.6.1 / 2016-02-28

 

Bug fixes:

 

* Ensure `default_path` and `home`are set for paths. Pull request #1513

  by Aaron Patterson.

* Restore but deprecate support forArray values on `Gem.paths=`. Pull

  request #1514 by AaronPatterson.

* Fix invalid gem file preventinggem install from working. Pull request

  #1499 by Luis Sagastume.

 

=== 2.6.0 / 2016-02-26

 

Minor enhancements:

 

* RubyGems now defaults the `gempush` to the gem's "allowed_push_host"

  metadata setting.  Pullrequest #1486 by Josh Lane.

* Update bundled Molinillo to0.4.3. Pull request #1493 by Samuel E. Giddins.

* Add version option to gem opencommand. Pull request #1483 by Hrvoje

  Šimić.

* Feature/add silent flag. Pullrequest #1455 by Luis Sagastume.

* Allow specifying gem requirementsvia env variables. Pull request #1472

  by Samuel E. Giddins.

 

Bug fixes:

 

* RubyGems now stores `gem push`credentials under the host you signed-in for.

  Pull request #1485 by JoshLane.

* Move `coding` location to firstline. Pull request #1471 by SHIBATA

  Hiroshi.

* [PathSupport] Handle a regexppath separator. Pull request #1469 by

  Samuel E. Giddins.

* Clean up the PathSupport object.Pull request #1094 by Aaron Patterson.

* Join with File::PATH_SEPARATOR in Gem.use_paths. Pull request #1476 by

  Samuel E. Giddins.

* Handle when the gem home and gempath arent set in the config file. Pull

  request #1478 by Samuel E.Giddins.

* Terminate TimeoutHandler. Pullrequest #1479 by Nobuyoshi Nakada.

* Remove redundant cache. Pullrequest #1482 by Eileen M. Uchitelle.

* Freeze `Gem::Version@segments`instance variable. Pull request #1487 by

  Ben Dean.

* Gem cleanup is trying touninstall gems outside GEM_HOME and reporting

  an error after it tries.Pull request #1353 by Luis Sagastume.

* Avoid duplicated sources. Pullrequest #1489 by Luis Sagastume.

* Better description for quietflag. Pull request #1491 by Luis Sagastume.

* Raise error if find_by_namereturns with nil. Pull request #1494 by

  Zoltán Hegedüs.

* Find_files only from loaded_gemswhen using gemdeps. Pull request #1277

  by Michal Papis.

 

 

------------------------------------------------------------------------------

 

RubyGems installed the followingexecutables:

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/gem

 

Ruby Interactive (ri) documentationwas installed. ri is kind of like man 

pages for ruby libraries. You mayaccess it like this:

  ri Classname

  ri Classname.class_method

  ri Classname#instance_method

If you do not wish to install thisdocumentation in the future, use the

--no-document flag, or set it asthe default in your ~/.gemrc file. See

'gem help env' for details.

 

RubyGems system software updated

 

再次尝试安装cocoapods

sudo  gem install  cocoapods

 

又有新的错误出现

Fetching: xcodeproj-1.5.1.gem(100%)

ERROR:  While executing gem... (Errno::EPERM)

    Operation notpermitted - /usr/bin/xcodeproj

 

这次尝试过

sudo nvram boot-args="rootless=0";sudo reboot

结果机器重新启动后还是不能安装

因为在Mac上安装了8.3.3的正式版xcode以及一个9.0的预览版xcode

故再次尝试 

sudo xcode-select -switch/Applications/Xcode.app/Contents/Developers

仍出现错误

xcode-select: error: invaliddeveloper directory '/Applications/Xcode.app/Contents/Developers'

 

就算将Xcode.app替换成Xcode-beta.app也是错误

xcode-select: error: invaliddeveloper directory '/Applications/Xcode-beta.app/Contents/Developers'

 

 

最终将安装的命令更该为以下才成功安装

sudo gem install -n /usr/local/bincocoapods --pre

出现

Successfully installedxcodeproj-1.5.1

Fetching: ruby-macho-1.1.0.gem(100%)

Successfully installedruby-macho-1.1.0

Fetching: nap-1.1.0.gem (100%)

Successfully installed nap-1.1.0

Fetching: molinillo-0.5.7.gem(100%)

Successfully installedmolinillo-0.5.7

Fetching: fourflusher-2.0.1.gem(100%)

Successfully installedfourflusher-2.0.1

Fetching: escape-0.0.4.gem (100%)

Successfully installed escape-0.0.4

Fetching: cocoapods-try-1.1.0.gem(100%)

Successfully installedcocoapods-try-1.1.0

Fetching: netrc-0.7.8.gem (100%)

Successfully installed netrc-0.7.8

Fetching: cocoapods-trunk-1.2.0.gem(100%)

Successfully installedcocoapods-trunk-1.2.0

Fetching: cocoapods-stats-1.0.0.gem(100%)

Successfully installedcocoapods-stats-1.0.0

Fetching:cocoapods-search-1.0.0.gem (100%)

Successfully installedcocoapods-search-1.0.0

Fetching:cocoapods-plugins-1.0.0.gem (100%)

Successfully installedcocoapods-plugins-1.0.0

Fetching:cocoapods-downloader-1.1.3.gem (100%)

Successfully installedcocoapods-downloader-1.1.3

Fetching:cocoapods-deintegrate-1.0.1.gem (100%)

Successfully installedcocoapods-deintegrate-1.0.1

Fetching: fuzzy_match-2.0.4.gem(100%)

Successfully installedfuzzy_match-2.0.4

Fetching: thread_safe-0.3.6.gem(100%)

Successfully installedthread_safe-0.3.6

Fetching: tzinfo-1.2.3.gem (100%)

Successfully installed tzinfo-1.2.3

Fetching: minitest-5.10.3.gem(100%)

Successfully installedminitest-5.10.3

Fetching: activesupport-4.2.9.gem(100%)

Successfully installedactivesupport-4.2.9

Fetching: cocoapods-core-1.3.1.gem(100%)

Successfully installedcocoapods-core-1.3.1

Fetching: cocoapods-1.3.1.gem(100%)

Successfully installedcocoapods-1.3.1

Parsing documentation forxcodeproj-1.5.1

Installing ri documentation forxcodeproj-1.5.1

Parsing documentation forruby-macho-1.1.0

Installing ri documentation forruby-macho-1.1.0

Parsing documentation for nap-1.1.0

Installing ri documentation fornap-1.1.0

Parsing documentation formolinillo-0.5.7

Installing ri documentation formolinillo-0.5.7

Parsing documentation forfourflusher-2.0.1

Installing ri documentation forfourflusher-2.0.1

Parsing documentation forescape-0.0.4

Installing ri documentation forescape-0.0.4

Parsing documentation forcocoapods-try-1.1.0

Installing ri documentation forcocoapods-try-1.1.0

Parsing documentation fornetrc-0.7.8

Installing ri documentation fornetrc-0.7.8

Parsing documentation forcocoapods-trunk-1.2.0

Installing ri documentation forcocoapods-trunk-1.2.0

Parsing documentation forcocoapods-stats-1.0.0

Installing ri documentation forcocoapods-stats-1.0.0

Parsing documentation forcocoapods-search-1.0.0

Installing ri documentation forcocoapods-search-1.0.0

Parsing documentation forcocoapods-plugins-1.0.0

Installing ri documentation forcocoapods-plugins-1.0.0

Parsing documentation forcocoapods-downloader-1.1.3

Installing ri documentation forcocoapods-downloader-1.1.3

Parsing documentation forcocoapods-deintegrate-1.0.1

Installing ri documentation forcocoapods-deintegrate-1.0.1

Parsing documentation forfuzzy_match-2.0.4

Installing ri documentation forfuzzy_match-2.0.4

Parsing documentation forthread_safe-0.3.6

Installing ri documentation forthread_safe-0.3.6

Parsing documentation fortzinfo-1.2.3

Installing ri documentation fortzinfo-1.2.3

Parsing documentation forminitest-5.10.3

Installing ri documentation forminitest-5.10.3

Parsing documentation foractivesupport-4.2.9

unable to convert "\x84"from ASCII-8BIT to UTF-8 for lib/active_support/values/unicode_tables.dat,skipping

Installing ri documentation foractivesupport-4.2.9

Parsing documentation forcocoapods-core-1.3.1

Installing ri documentation forcocoapods-core-1.3.1

Parsing documentation forcocoapods-1.3.1

Installing ri documentation forcocoapods-1.3.1

21 gems installed

 

至此安装结束

 

 

附上pod 的命令

Usage:

 

    $ pod COMMAND

 

      CocoaPods, theCocoa library package manager.

 

Commands:

 

    + cache         Manipulate the CocoaPods cache

    + deintegrate   Deintegrate CocoaPods from yourproject

    + env           Display pod environment

    + init          Generate a Podfile for thecurrent directory

    + install       Install project dependencies accordingto versions from a

                   Podfile.lock

    + ipc           Inter-processcommunication

    + lib           Develop pods

    + list          List pods

    + outdated      Show outdated project dependencies

    + plugins       Show available CocoaPods plugins

    + repo          Manage spec-repositories

    + search        Search for pods

    + setup         Setup the CocoaPods environment

    + spec          Manage pod specs

    + trunk         Interact with the CocoaPods API(e.g. publishing new specs)

    + try           Try a Pod!

    + update        Update outdated projectdependencies and create new Podfile.lock

 

Options:

 

    --silent        Show nothing

    --version       Show the version of the tool

    --verbose       Show more debugging information

    --no-ansi       Show output without ANSI codes

    --help          Show help banner ofspecified command

 

 

参看:

 1.   http://blog.csdn.net/prl18353364833/article/details/53905487

 2.   http://blog.csdn.net/NSNirvana/article/details/46873071

 3.   http://code4app.com/article/cocoapods-install-usage#install

关于ruby中国国内镜像的补充      https://ruby.taobao.org/       

        http://gems.ruby-china.org/

 


这里在加上Ruby 和Gem

ruby是一种脚本语言,gem是使用gem编写的开发工具包,用于安装软件。不同的gem依赖不同ruby版本。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值