ffi gem(正しいバージョン1.0.11)が正しくインストールされていてもバンドルのインストールが失敗しました。私はちょうど罰金を経てffiのインストールに失敗しました(envコマンドエラーのため)
gem install ffi -v '1.0.11'
を試してみました
Installing ffi (1.0.11) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. ... creating Makefile make Configuring libffi for i386 env: --disable-static: No such file or directory make[1]: *** No targets specified and no makefile found. Stop. Configuring libffi for x86_64 env: --disable-static: No such file or directory make[1]: *** No targets specified and no makefile found. Stop. make: *** ["/mypath/clients/myapp/rails=2.3.5/ruby/1.8/gems/ffi-1.0.11/ext/ffi_c/libffi"/.libs/libffi_convenience.a] Error 2 An error occured while installing ffi (1.0.11), and Bundler cannot continue. Make sure that `gem install ffi -v '1.0.11'` succeeds before bundling.
:「バンドルのインストール」を実行するとき、私は、次のエラーを得ました。 次に、失敗したMakefileを調べて、
make -nを実行して、何が起こったかを確認します。これは、makeがコマンドに失敗したことが判明:
cd "/mypath/clients/myapp/rails=2.3.5/ruby/1.8/gems/ffi-1.0.11/ext/ffi_c"/libffi-$arch && env CC=" gcc" CFLAGS="-arch $arch " LDFLAGS="-arch $arch" "/mypath/clients/myapp/rails=2.3.5/ruby/1.8/gems/ffi-1.0.11/ext/ffi_c/libffi"/configure --disable-static --with-pic=yes --disable-dependency-tracking --host=$arch-apple-darwin > /dev/null;
具体的には、それはどうやらenvコマンドは、パスは「=含まれているので一部
"/mypath/clients/myapp/rails=2.3.5/ruby/1.8/gems/ffi-1.0.11/ext/ffi_c/libffi"/configureは、環境変数を設定することであると考えて
env CC=" gcc" CFLAGS="-arch $arch " LDFLAGS="-arch $arch" "/mypath/clients/myapp/rails=2.3.5/ruby/1.8/gems/ffi-1.0.11/ext/ffi_c/libffi"/configure --disable-static --with-pic=yes --disable-dependency-tracking --host=$arch-apple-darwin > /dev/null;
に失敗しました。 "私が手動で "="を "_"に変更すると、envコマンドはうまく動作します。しかし、このパスは "bundle install"によって自動的に生成され、これまでは動作していました。
私はちょうど
bundle install --path=rails_2.3.5を試してみました。しかし、私はまだパスレール= 2.3.5が過去にどのように働いたのか疑問に思います。
私は誤って私のMacでいくつかの設定を変更したのでそれはありましたか?引用符の "="は環境変数ではないことをenvに認識させることはできますか?
ありがとうございます。
さらに、https://github.com/kennethreitz/osx-gcc-installerをインストール/再インストールする必要があります。 Mountain Lionへのアップグレード後、私のインストールが壊れました。 osx-gcc固定オブジェクトをffiで再インストールしてください。 –