5

OSX 10.8にffiをインストールしようとしました

gem install ffi -v '1.1.5'

結果とともに

ERROR:  Error installing ffi:
ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
checking for ffi.h... no
checking for ffi.h in /usr/local/include,/usr/include/ffi... no
checking for rb_thread_blocking_region()... no
checking for ruby_native_thread_p()... no
checking for rb_thread_call_with_gvl()... no
creating extconf.h
creating Makefile

make
mkdir -p "/Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c"/libffi-i386; (if [ ! -f       "/Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c"/libffi-i386/Makefile ]; then echo "Configuring libffi for i386"; cd "/Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c"/libffi-i386 && env CC=" xcrun cc" CFLAGS="-arch i386 " LDFLAGS="-arch i386" "/Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c/libffi"/configure --disable-static --with-pic=yes --disable-dependency-tracking --host=i386-apple-darwin > /dev/null; fi); env MACOSX_DEPLOYMENT_TARGET=10.4 make -C "/Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c"/libffi-i386
Configuring libffi for i386
configure: WARNING: if you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used
configure: error: in `/Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c/libffi-i386':
configure: error: C compiler cannot create executables
See `config.log' for more details
make[1]: *** No targets specified and no makefile found.  Stop.
make: *** ["/Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c"/libffi-   i386/.libs/libffi_convenience.a] Error 2


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/ffi-1.1.5 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/ffi-1.1.5/ext/ffi_c/gem_make.out

フォローしてみた

ffi (1.1.2) のインストール中にエラーが発生し、Bundler を続行できません

マウンテン ライオンのアップグレード後に一部の宝石をインストールできない

運がなければ。

4

3 に答える 3

0

システムが64ビットを実行しているときにffiが32ビットバージョンのビルドを要求しているようです。

続行するには、おそらく2つの方法があります。

  1. 最新バージョンのgemを使用してみてくださいgem install ffi-ただし、これは機能する必要はありません-これはライブラリで修正する必要があるため、
  2. 32ビットルビーをコンパイルしますrvm install 1.9.3-n32 --32-しかし、ほとんどのライブラリは64ビット用にコンパイルされる可能性が高いため、これも機能する必要はありません。したがって、コンパイルまたはコンパイルされない可能性があり、問題が発生する可能性があります
于 2012-08-20T17:17:03.083 に答える
0

Xcode Command Line Toolsインストールまたはhttps://github.com/kennethreitz/osx-gcc-installerを試してください

于 2012-09-08T04:40:52.480 に答える