简体   繁体   English

gem更新sqlite3-ruby在Mac OS X 10.5.8上失败

[英]gem update sqlite3-ruby fails on Mac OS X 10.5.8

I was trying to get the latest ruby on rails for my Mac running OS X 10.5.8. 我正在尝试为运行OS X 10.5.8的Mac获取最新的ruby。 All went well until I tried to update the sqlite3-ruby. 一切顺利,直到我尝试更新sqlite3-ruby。 I see that others have had similar problems, but they were on Windows. 我看到其他人也有类似的问题,但是他们在Windows上。

This is the error: 这是错误:

sudo gem update sqlite3-ruby Updating installed gems Updating sqlite3-ruby Building native extensions.  This could take a while... ERROR:  Error installing sqlite3-ruby:   ERROR: Failed to build gem native extension.

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


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/sqlite3-ruby-1.2.5 for inspection. Results logged to /Library/Ruby/Gems/1.8/gems/sqlite3-ruby-1.2.5/ext/sqlite3_api/gem_make.out Nothing to update

These are the steps I performed: 这些是我执行的步骤:

 sudo gem update --system
 sudo gem install rails
 sudo gem update rake
 sudo gem update sqlite3-ruby

Here is the full trace: 这是完整的跟踪:

paul-chernochs-imac-5:~ paulchernoch$ sudo gem update --system

WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.

To proceed, enter your password, or type Ctrl-C to abort.

Password:
Updating RubyGems...
Bulk updating Gem source index for: http://gems.rubyforge.org
Attempting remote update of rubygems-update
Successfully installed rubygems-update-1.3.5
1 gem installed
Installing ri documentation for rubygems-update-1.3.5...
Installing RDoc documentation for rubygems-update-1.3.5...
Could not find main page README
Could not find main page README
Could not find main page README
Could not find main page README
Updating version of RubyGems to 1.3.5
Installing RubyGems 1.3.5
RubyGems 1.3.5 installed

=== 1.3.5 / 2009-07-21

Bug fixes:

* Fix use of prerelease gems.
* Gem.bin_path no longer escapes path with spaces. Bug #25935 and #26458.

Deprecation Notices:

* Bulk index update is no longer supported (the code currently remains, but not
  the tests)
* Gem::manage_gems was removed in 1.3.3.
* Time::today was removed in 1.3.3.


------------------------------------------------------------------------------

RubyGems installed the following executables:
    /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/gem

RubyGems system software updated
paul-chernochs-imac-5:~ paulchernoch$ sudo gem install rails
Password:
Successfully installed rake-0.8.7
Successfully installed activesupport-2.3.4
Successfully installed activerecord-2.3.4
Successfully installed rack-1.0.1
Successfully installed actionpack-2.3.4
Successfully installed actionmailer-2.3.4
Successfully installed activeresource-2.3.4
Successfully installed rails-2.3.4
8 gems installed
Installing ri documentation for rake-0.8.7...
Installing ri documentation for activesupport-2.3.4...
Installing ri documentation for activerecord-2.3.4...
Installing ri documentation for rack-1.0.1...
Installing ri documentation for actionpack-2.3.4...
Installing ri documentation for actionmailer-2.3.4...
Installing ri documentation for activeresource-2.3.4...
Installing ri documentation for rails-2.3.4...
Installing RDoc documentation for rake-0.8.7...
Installing RDoc documentation for activesupport-2.3.4...
Installing RDoc documentation for activerecord-2.3.4...
Installing RDoc documentation for rack-1.0.1...
Installing RDoc documentation for actionpack-2.3.4...
Installing RDoc documentation for actionmailer-2.3.4...
Installing RDoc documentation for activeresource-2.3.4...
Installing RDoc documentation for rails-2.3.4...
paul-chernochs-imac-5:~ paulchernoch$ sudo gem update rake
Updating installed gems
Nothing to update
paul-chernochs-imac-5:~ paulchernoch$ sudo gem update sqlite3-ruby
Updating installed gems
Updating sqlite3-ruby
Building native extensions.  This could take a while...
ERROR:  Error installing sqlite3-ruby:
    ERROR: Failed to build gem native extension.

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


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/sqlite3-ruby-1.2.5 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/sqlite3-ruby-1.2.5/ext/sqlite3_api/gem_make.out
Nothing to update

I downloaded Xcode 3.1.4 and installed it. 我下载并安装了Xcode 3.1.4。 Now I get different errors reported: 现在我收到了报告的其他错误:

    paul-chernochs-imac-5:~ paulchernoch$ sudo gem update sqlite3-ruby
    Password:
    Updating installed gems
    Updating sqlite3-ruby
    Building native extensions.  This could take a while...
    Successfully installed sqlite3-ruby-1.2.5
    Gems updated: sqlite3-ruby
    Installing ri documentation for sqlite3-ruby-1.2.5...

    No definition for _wrap_new_CallbackData

    No definition for _wrap_CallbackData_proc_set

    No definition for _wrap_CallbackData_proc_get

    No definition for _wrap_CallbackData_proc2_set

    No definition for _wrap_CallbackData_proc2_get

    No definition for _wrap_CallbackData_data_set

    No definition for _wrap_CallbackData_data_get

    No definition for _wrap_sqlite3_libversion

    No definition for _wrap_sqlite3_close

    No definition for _wrap_sqlite3_last_insert_rowid

    No definition for _wrap_sqlite3_changes

    No definition for _wrap_sqlite3_total_changes

    No definition for _wrap_sqlite3_interrupt

    No definition for _wrap_sqlite3_complete

    No definition for _wrap_sqlite3_complete16

    No definition for _wrap_sqlite3_busy_handler

    No definition for _wrap_sqlite3_busy_timeout

    No definition for _wrap_sqlite3_set_authorizer

    No definition for _wrap_sqlite3_trace

    No definition for _wrap_sqlite3_open

    No definition for _wrap_sqlite3_open16

    No definition for _wrap_sqlite3_errcode

    No definition for _wrap_sqlite3_errmsg

    No definition for _wrap_sqlite3_errmsg16

    No definition for _wrap_sqlite3_prepare

    No definition for _wrap_sqlite3_prepare16

    No definition for _wrap_sqlite3_bind_blob

    No definition for _wrap_sqlite3_bind_double

    No definition for _wrap_sqlite3_bind_int

    No definition for _wrap_sqlite3_bind_int64

    No definition for _wrap_sqlite3_bind_null

    No definition for _wrap_sqlite3_bind_text

    No definition for _wrap_sqlite3_bind_text16

    No definition for _wrap_sqlite3_bind_parameter_count

    No definition for _wrap_sqlite3_bind_parameter_name

    No definition for _wrap_sqlite3_bind_parameter_index

    No definition for _wrap_sqlite3_column_count

    No definition for _wrap_sqlite3_column_name

    No definition for _wrap_sqlite3_column_name16

    No definition for _wrap_sqlite3_column_decltype

    No definition for _wrap_sqlite3_column_decltype16

    No definition for _wrap_sqlite3_step

    No definition for _wrap_sqlite3_data_count

    No definition for _wrap_sqlite3_column_blob

    No definition for _wrap_sqlite3_column_bytes

    No definition for _wrap_sqlite3_column_bytes16

    No definition for _wrap_sqlite3_column_double

    No definition for _wrap_sqlite3_column_int

    No definition for _wrap_sqlite3_column_int64

    No definition for _wrap_sqlite3_column_text

    No definition for _wrap_sqlite3_column_text16

    No definition for _wrap_sqlite3_column_type

    No definition for _wrap_sqlite3_finalize

    No definition for _wrap_sqlite3_reset

    No definition for _wrap_sqlite3_create_function

    No definition for _wrap_sqlite3_create_function16

    No definition for _wrap_sqlite3_aggregate_count

    No definition for _wrap_sqlite3_value_blob

    No definition for _wrap_sqlite3_value_bytes

    No definition for _wrap_sqlite3_value_bytes16

    No definition for _wrap_sqlite3_value_double

    No definition for _wrap_sqlite3_value_int

    No definition for _wrap_sqlite3_value_int64

    No definition for _wrap_sqlite3_value_text

    No definition for _wrap_sqlite3_value_text16

    No definition for _wrap_sqlite3_value_text16le

    No definition for _wrap_sqlite3_value_text16be

    No definition for _wrap_sqlite3_value_type

    No definition for _wrap_sqlite3_result_blob

    No definition for _wrap_sqlite3_result_double

    No definition for _wrap_sqlite3_result_error

    No definition for _wrap_sqlite3_result_error16

    No definition for _wrap_sqlite3_result_int

    No definition for _wrap_sqlite3_result_int64

    No definition for _wrap_sqlite3_result_text

    No definition for _wrap_sqlite3_result_text16

    No definition for _wrap_sqlite3_result_text16le

    No definition for _wrap_sqlite3_result_text16be

    No definition for _wrap_sqlite3_result_value

    No definition for _wrap_sqlite3_aggregate_context
    Installing RDoc documentation for sqlite3-ruby-1.2.5...

    No definition for _wrap_new_CallbackData

    No definition for _wrap_CallbackData_proc_set

    No definition for _wrap_CallbackData_proc_get

    No definition for _wrap_CallbackData_proc2_set

    No definition for _wrap_CallbackData_proc2_get

    No definition for _wrap_CallbackData_data_set

    No definition for _wrap_CallbackData_data_get

    No definition for _wrap_sqlite3_libversion

    No definition for _wrap_sqlite3_close

    No definition for _wrap_sqlite3_last_insert_rowid

    No definition for _wrap_sqlite3_changes

    No definition for _wrap_sqlite3_total_changes

    No definition for _wrap_sqlite3_interrupt

    No definition for _wrap_sqlite3_complete

    No definition for _wrap_sqlite3_complete16

    No definition for _wrap_sqlite3_busy_handler

    No definition for _wrap_sqlite3_busy_timeout

    No definition for _wrap_sqlite3_set_authorizer

    No definition for _wrap_sqlite3_trace

    No definition for _wrap_sqlite3_open

    No definition for _wrap_sqlite3_open16

    No definition for _wrap_sqlite3_errcode

    No definition for _wrap_sqlite3_errmsg

    No definition for _wrap_sqlite3_errmsg16

    No definition for _wrap_sqlite3_prepare

    No definition for _wrap_sqlite3_prepare16

    No definition for _wrap_sqlite3_bind_blob

    No definition for _wrap_sqlite3_bind_double

    No definition for _wrap_sqlite3_bind_int

    No definition for _wrap_sqlite3_bind_int64

    No definition for _wrap_sqlite3_bind_null

    No definition for _wrap_sqlite3_bind_text

    No definition for _wrap_sqlite3_bind_text16

    No definition for _wrap_sqlite3_bind_parameter_count

    No definition for _wrap_sqlite3_bind_parameter_name

    No definition for _wrap_sqlite3_bind_parameter_index

    No definition for _wrap_sqlite3_column_count

    No definition for _wrap_sqlite3_column_name

    No definition for _wrap_sqlite3_column_name16

    No definition for _wrap_sqlite3_column_decltype

    No definition for _wrap_sqlite3_column_decltype16

    No definition for _wrap_sqlite3_step

    No definition for _wrap_sqlite3_data_count

    No definition for _wrap_sqlite3_column_blob

    No definition for _wrap_sqlite3_column_bytes

    No definition for _wrap_sqlite3_column_bytes16

    No definition for _wrap_sqlite3_column_double

    No definition for _wrap_sqlite3_column_int

    No definition for _wrap_sqlite3_column_int64

    No definition for _wrap_sqlite3_column_text

    No definition for _wrap_sqlite3_column_text16

    No definition for _wrap_sqlite3_column_type

    No definition for _wrap_sqlite3_finalize

    No definition for _wrap_sqlite3_reset

    No definition for _wrap_sqlite3_create_function

    No definition for _wrap_sqlite3_create_function16

    No definition for _wrap_sqlite3_aggregate_count

    No definition for _wrap_sqlite3_value_blob

    No definition for _wrap_sqlite3_value_bytes

    No definition for _wrap_sqlite3_value_bytes16

    No definition for _wrap_sqlite3_value_double

    No definition for _wrap_sqlite3_value_int

    No definition for _wrap_sqlite3_value_int64

    No definition for _wrap_sqlite3_value_text

    No definition for _wrap_sqlite3_value_text16

    No definition for _wrap_sqlite3_value_text16le

    No definition for _wrap_sqlite3_value_text16be

    No definition for _wrap_sqlite3_value_type

    No definition for _wrap_sqlite3_result_blob

    No definition for _wrap_sqlite3_result_double

    No definition for _wrap_sqlite3_result_error

    No definition for _wrap_sqlite3_result_error16

    No definition for _wrap_sqlite3_result_int

    No definition for _wrap_sqlite3_result_int64

    No definition for _wrap_sqlite3_result_text

    No definition for _wrap_sqlite3_result_text16

    No definition for _wrap_sqlite3_result_text16le

    No definition for _wrap_sqlite3_result_text16be

    No definition for _wrap_sqlite3_result_value

    No definition for _wrap_sqlite3_aggregate_context

Looking at the latest errors you posted, looks like your update completed successfully. 查看您发布的最新错误,看起来更新成功完成。 Besides the trouble updating documentation, the gem itself should work just fine. 除了更新文档的麻烦外,gem本身也可以正常工作。

您需要安装Ruby头文件

As Marcel suggested, installing the header files (by downloading and installing latest version of Xcode) fixed the build error for me. 正如Marcel所建议的那样,安装头文件(通过下载和安装最新版本的Xcode)为我解决了构建错误。 But I then had a problem where the sqlite3 1.3.3 gem couldn't find Sqlite3 and suggested installing the port. 但是后来我遇到了一个问题,其中sqlite3 1.3.3 gem无法找到Sqlite3并建议安装端口。 This didn't make sense since it is already installed in /usr/bin on Mac OS X. The problem was that it was looking for the universal binary of sqlite3. 这没有任何意义,因为它已经安装在Mac OS X的/ usr / bin中。问题是它正在寻找sqlite3的通用二进制文件。 I fixed it by forcing it to install for i386 architecture using this command: 我通过使用以下命令强制将其安装为i386体系结构来修复该问题:

sudo env ARCHFLAGS="-arch x86_64" gem install sqlite3-ruby

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM