0

私はaを実行しようとしていますが、gem pristine --all現在sqlite3セクションでエラーが発生しています。具体的には:

checking for sqlite3_uint64 in sqlite3.h... yes
creating Makefile

make
compiling backup.c
In file included from backup.c:3:
In file included from ./sqlite3_ruby.h:51:
./backup.h:7:3: error: unknown type name 'sqlite3_backup'; did you mean 'sqlite3_value'?
  sqlite3_backup *p;
  ^~~~~~~~~~~~~~
  sqlite3_value
/usr/local/include/sqlite3.h:1764:20: note: 'sqlite3_value' declared here
typedef struct Mem sqlite3_value;
                   ^
backup.c:63:3: error: unknown type name 'sqlite3_backup'; did you mean 'sqlite3_value'?
  sqlite3_backup *pBackup;
  ^~~~~~~~~~~~~~
  sqlite3_value
    /usr/local/include/sqlite3.h:1764:20: note: 'sqlite3_value' declared here
typedef struct Mem sqlite3_value;
               ^

おそらくこれらのエラーに関連して、次の一連の警告があります。ボトムラインには、gem_make.outログファイルへの参照もあります。それを見ると、基本的に上記のリトレッドです。

現在の環境の詳細...何が有用で何がそうでないかはわかりません...:)

which ruby
/Users/kriston/.rvm/rubies/ruby-1.9.3-p194/bin/ruby
which gem
/Users/kriston/.rvm/rubies/ruby-1.9.3-p194/bin/gem
sqlite3 -version
3.7.13 2012-06-11 02:05:22 f5b5a13f7394dc143aa136f1d4faba6839eaa6dc

を実行するgem environmentと、このバージョンのgemが提供されますRUBYGEMS VERSION: 1.8.24

sqlite3のコンパイルが失敗する理由と、それを修正する方法を誰かが知っていますか?ありがとう!

4

1 に答える 1

0

ユニバーサル設定を使用して、最初から sqlite3 を再度インストールする必要があることがわかりました。ただし、その前に macports を更新し、4.3 Xcode 開発ツールが実際に認識されていることを確認する必要がありました。

最初に: $ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer/

その後 sudo port selfupgrade

そして最後に sudo gem install sqlite3 +universal

その後、ランニング gem pristine --allは正常に動作しました!

于 2012-06-27T22:31:38.410 に答える