2010-12-02 1 views
1

sudo macgem install sequel 명령을 사용하여 Sequel을 방금 설치했습니다. 그것은 sequel-3.18.0이 성공적으로 설치되었음을 알려줍니다.MacRuby, Sequel을 사용할 때의 오류

xcode를 실행하고 새로운 MacRuby 응용 프로그램을 시작하면 단위 테스트 대상이 설정됩니다. 나는 다음 두 줄과 stub_test.rb을 수정 한 :

require "rubygems" 
require "sequel" 

단위 테스트를 실행하려고, 나는 다음과 같은 오류 얻을 : 두 require 문없이

/Users/.../macRuby Test/Tests/run_suite.rb:1:in `<main>': super: no superclass method `require' for Sequel:Class (NoMethodError) 

을, 테스트가 잘 실행.

나는이 구글하려고 발견 한 ticket on macruby.org 다음

Ticket #930 SIGABRT in MacRuby 0.7 with Sequel + SQLite3-Ruby gem [...] After patching for Kernel#require issue in Sequel, I am able to load both Sequel, and SQLite3, with no problems. [...] Required libraries are Sequel (Patched for Kernel.require, instead of super in Sequel#self.require), and SQLite3-Ruby. [...]

그래도 다른 곳이 패치에 대해 아무것도 찾을 수 없습니다 ...

이 알려진 문제가 있습니까? 이 오류 메시지의 의미는 무엇이며 어떻게 작동합니까?

답변

2

MacRuby의 어떤 버전을 실행합니까? 또한 32 비트 Mac을 실행합니까?

내 환경에서 MacRuby 트렁크를 실행하는 64 비트 Intel Mac에 설치하고 후속편이 필요합니다.

 
$ /usr/local/bin/macruby -r rubygems -e "require 'sequel'; p 42" 
42 

Eloy가 말한 것처럼 MacRuby 문제는 메일 링리스트 또는 티켓 trac에보고하는 것이 좋습니다.

+0

나는 늦은 2009 인텔 맥북 프로에서 macruby 0.7 (최신 안정 릴리스)를 사용하고 있습니다. 나는 최신 빌드를 시도 할 것이다. – Vegar

+0

마지막 빌드를 통해 한 걸음 더 나아갔습니다. 감사합니다. 여전히 작동하지 않지만, 아마도 sqlite 문제는 속편 문제가 아니라고 생각합니다. – Vegar

+0

잘못된 sqlite-gem이 설치되어있는 것으로 추측합니다. sqlite3을 제거하고 sqlite3-ruby를 설치하면 모든 것이 잘 보입니다 :-) – Vegar

1

MacRuby (IronRuby와 같은)는 현재 Sequel에서 작동하기에 충분한 루비 언어를 구현하지 않습니다. 후속편은 MRI (1.8 및 1.9), JRuby 및 Rubinius에서 테스트되었으므로 그 중 하나를 시도해 볼 수 있습니다.

+0

나는 속편을 실행하는 편리한 인터프리터가 아니라 macruby 응용 프로그램에 데이터를 저장하는 편리한 방법을 찾고 있습니다. 그래서 나는 다른 곳을 봐야만한다고 생각합니다. 너무 나빴습니다. 후계자가 좋아 보인다! – Vegar

+0

나는 MacRuby에서 작동한다는 다른 답변이 있음을 감안할 때 downvote하지만, 제대로 작동하는지 알 수 있다고 생각합니다. – Phrogz

+0

작품을 보면 모든 스펙을 통과 한 것입니다. macruby가 아직 정확한 수퍼 클래스 메소드 조회를 구현하지 않았다면 Sequel과 완벽하게 작동하지 않을 것입니다. Sequel의 일부가 macruby에서 작동한다는 것은 놀라운 일이 아닙니다. Sequel의 일부는 IronRuby에서도 작동합니다. 하지만 나는 현재 버전에서도 Sequel의 동작에 의존하지 않을 것입니다. –

0

MacRuby가 여전히 많이 개발 중이므로 MacRuby-devel 메일 링리스트에서이 질문을하는 것이 좋을 것 같습니다. Sequel이 MacRuby에서 작업하게하는 방법을 알고있는 사람들 (나는 사람들이 그렇게했다는 것을 알고 있습니다)도 있습니다.

+0

나는 그것을 시도 할 것이다. 감사. – Vegar

1

http://www.macruby.org/contact-us.html 나는 similar issues으로 실행하고 다음과 같은 조합으로 작업을 얻을 수있었습니다 :

MacRuby 0.8 
sqlite3-ruby gem 1.3.2 
sequel gem 3.18.0 
OSX 10.6.5 

비결은 'sqlite3를'보석을 제거하고 'sqlite3를 루비'를 설치했다.

+0

이 조합은 속편 보석을 필요로하지만, 사용하기 시작하자마자 세분화 오류가 발생합니다 ... – Vegar

+0

'sqlite3'보석? 나는이 콤보로 dbs, 테이블, 질의 등을 만들 수 있었지만 오래된 보석과 segfaults했다. ~/.gem /에서 보석 캐시를 삭제하려고 할 수도 있습니다. 편집 : 고민, 방금 다른 답변에서 귀하의 응답을 보았다. –