2
sudo env ARCHFLAGS="-arch x86_64" gem install do_sqlite3 
Building native extensions.  This could take a while...
ERROR:  Error installing do_sqlite3:
    ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
checking for sqlite3.h... yes
checking for sqlite3_open() in -lsqlite3... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

ヘッダーファイルと同様にsqlite3-rubyをインストールしましたが、何らかの理由でsqlite3_open()をチェックすると失敗します

4

2 に答える 2

1

わかりました。最初の質問は、なぜ ARCHFLAGS を渡すのですか? それらを渡さずに機能しない場合、それは必要ないはずです。その場合、どのような出力が得られますか?

次の質問は、どのバージョンの sqlite3 がピックアップされているかです。たとえば、Macports を介して sqlite3 をインストールしていますか? 最近 Snow Leopard にアップグレードしましたが、アップグレード前の sqlite3 をまだインストールしていますか?

于 2009-12-25T22:45:35.453 に答える
1

私は同じ問題を抱えています:

sudo env ARCHFLAGS="-arch x86_64" gem install do_sqlite3
Building native extensions.  This could take a while...
ERROR:  Error installing do_sqlite3:
ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h

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

Snow Leopard を実行しています。sqlite3の以前のインストールについてはわかりませんが、これを試しました:

port search sqlite

そして、(とりわけ)以下を返しました:

...
sqlite3 @3.6.17 (databases)
an embedded SQL database engine

正直なところ、これが何を意味するのかわかりません。DataMapper を使用して Rails 3 で使用するために do_sqlite3 をインストールするために、誰が何を提案しますか? (また、「env ARCHFLAGS="-arch x86_64"」なしで実行すると、同じエラーが発生します。)

于 2010-02-13T23:03:02.290 に答える