Help us understand the problem. What is going on with this article?

本格的なiOS開発でよく使うツール

本格的なiOSの開発に必要なツール類

個人開発ならXcode・Carthage・CocoaPodsがインストールされていれば十分だが、会社などチームで開発しようとすると、各種ツールのバージョン管理が必要となり、色々前提ツールが増えてくるのでまとめる
Xcodeは必要なバージョンをインストールしてあること前提

  1. Homebrew
    • macOS用パッケージマネージャー
    • 下記ツールをインストールするための前提
  2. rbenv
    • rubyのバージョン管理ツール
    • Macにデフォルトで入っているRubyだと何かと不都合が多いので、このツールでバージョンを自由に切り替えたり、ディレクトリ毎にバージョンを指定したりできるようにする
    • :warning: よく上手くインストールできなくて引っかかる部分(後述)
  3. bundler
    • gemパッケージの管理ツール
    • CocoaPodsやfastlaneなどをこれでバージョン管理・インストールする
  4. Carthage
    • ライブラリ管理ツール
  5. GitHubに対するssh接続
    • fastlaneでCertificateを管理していたり、SSOを導入しているGitHubのOrganizationで作業をする時に必要
  6. mergepbx (optional)
    • コンフリクトしやすい.xcodeprojをよしなにマージしてくれるツール
    • XcodeGenを使用するなら不要
  7. SlackとかGitHubのアイコンを自分の推しに変える(最重要)
    • アニメでもアイドルでも何でもいいので自分の推しに変える
    • デフォルトアイコンだと誰だか見分けが付かない

個別のインストール方法はrbenv以外公式ページ通りやれば詰まるところはないはずなので割愛

構築時によく引っかかる所

rbenv をインストールしたはずなのに ruby -v が期待したバージョンになってない

ターミナルで which ruby を叩いても /Users/YOUR_USER/.rbenv/shims/ruby など、rbenv配下のrubyを見ずに、Macにデフォルトでインストールされているrubyを見ているパターン
下記のようにインストールすれば解決可能

brew install rbenv
echo 'export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl) --with-readline-dir=$(brew --prefix readline) $RUBY_CONFIGURE_OPTS"' >> ~/.bash_profile
echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
source ~/.bash_profile

なおmacOS Catalinaからはターミナルがbashではなくzshになったので、macが最初からCatalinaだった場合は .bash_profile ではなく .zshrc になる点に注意

参考

rbenv で必要なrubyバージョンをインストールしてるのに、bundlerの実行時にバージョンが違うと言われる

パスがrbenvでインストールしたrubyでなく、システムのrubyを見るようになってると思われる
(bundler自体もrbenvのほうではなくシステムのrubyにインストールされてしまっている)
上述の用にrbenvをインストールする ( or インストール済みの場合は brew install rbenv 以外を実行する) で直るはず

kuroruri
某社でiOSアプリの開発をしたり、新しいアプリのアーキテクチャを整える人 システムアーキテクチャにRedux ( Flux ) 、GUIアーキテクチャに MVVMの構成をすることが多い
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした