もちろん、ここでの最善のヒントの1つは、1〜2か月待ってから更新することです。これにより、多くの問題や時間の損失を防ぐことができます。 しかし、私は待つ気がしないので、アップグレード後はすべてが壊れることが保証されます(主にルビーとレールについて説明します):segフォールトがポップアップし、いくつかの宝石が収集されず、コンソールのスクリプトに問題があります。
いくつかの問題を修正することはグーグルに簡単ですが、いくつかのために追加のコンパイルパラメータと環境変数を設定するという形でハックのみを提供します。
作者は週末のほとんどを使ってシステムを完全に更新し、作業環境を構成しました。その結果、以下に説明する指示が生まれました。 あなたがハッキングし、ポピーで開発し、更新される場合は、次の点に従うことで時間を節約できます。
- まず、OSXの更新後、Xcodeを起動し、更新をインストールして、新しいライセンスに同意します。
- 何らかの理由で、6.1はYosemiteでの通常の操作に必要ですが、アプリストアのXcodeで使用できるのは6.0.1だけなので、 このリンクからXcode 6.1をダウンロードし、コンソールにインストールします
xcode-select --install
- Yosemiteはコンソールで何かをしました。その理由は、スクリプト/プログラムの実行時に現在のターミナルセッションの環境変数と環境変数が異なるためです。むしろ、〜/ .bashprofileまたは〜/ .zshrcのPATHに加えられた変更はそうではありませんピックアップされます。 問題が何であるかはわかりませんが、実際には2つのPATH変数があります。1つは〜/ .bashrcからの変更を含み、もう1つはシステムにデフォルト設定されます。
このため、多くの妨害がコンソールで発生し始めており、インターネット上のあらゆる場所で文句を言われています。 理解できない問題を回避するには、コンソール設定で、ログインシェル「/ usr / bin / login -f your_user_name」を明示的に指定する必要があります。
- 次に、homebrewを更新する必要があります。これは、その中に書かれているルビーの1.8バージョンのために機能しません。
cd /usr/local git pull
- 次の項目は、gccとその依存関係のインストールです(以前にインストールしていなかった場合)。
brew install gcc
- homebrewパッケージをアップグレードします。
brew upgrade
- 何かがまだ間違っている可能性があるため、醸造医が問題を起こさないようにしてください。
- powを更新するのは、 ヨセミテでは、古いパウで使用されている廃止されたAPIをいくつか見ました。
curl get.pow.cx | sh
- 今、あなたはこすりを再インストールすることができます
rvm reinstall 2.1.3
- そして、もちろんそれを使用する場合、最後のポイントはpostgresです。 Yosemiteでは、作業が停止します。修正するには、3つのディレクトリを作成します
mkdir /usr/local/var/postgres/pg_tblspc mkdir /usr/local/var/postgres/pg_twophase mkdir /usr/local/var/postgres/pg_stat_tmp touch /usr/local/var/postgres/pg_tblspc/.keep touch /usr/local/var/postgres/pg_twophase/.keep touch /usr/local/var/postgres/pg_stat_tmp/.keep
上記の操作の後、プロジェクトでのバンドルインストールは最終的に正しく動作し、エラーなしですべてのgemを収集するはずです。
良い仕事をしてください。
コメントからのPSアドオン:
- OSXをアップグレードする前に、brew update && brew upgradeを実行します
- 項目3に関しては、環境変数を〜/ .profileに転送する必要があります。
PPS私はもう1つの問題に遭遇しました。更新後、ロシア語が鉄道コンソールで壊れました。 これを修正するには、〜/ .zshrcまたは〜/ .profileに登録する必要があります
LANG="ru_RU.UTF-8" LC_COLLATE="ru_RU.UTF-8" LC_CTYPE="ru_RU.UTF-8" LC_MESSAGES="ru_RU.UTF-8" LC_MONETARY="ru_RU.UTF-8" LC_NUMERIC="ru_RU.UTF-8" LC_TIME="ru_RU.UTF-8" LC_ALL="ru_RU.UTF-8"