我最近将我的雪豹升级为狮子,在我的一个应用程序中我得到了
=> Booting WEBrick
=> Rails 3.0.4 application starting in development on http://0.0.0.0:4000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-08-16 17:47:27] INFO WEBrick 1.3.1
[2011-08-16 17:47:27] INFO ruby 1.9.2 (2011-07-09) [x86_64-darwin11.0.0]
[2011-08-16 17:47:27] INFO WEBrick::HTTPServer#start: pid=3460 port=4000
Trace/BPT trap: 5
应用退出并且没有其他输出,它确实以sqlite3作为db gem运行。 我评论了所有其他宝石,但这一个仍然得到了错误。我看到这个错误不是在应用程序加载时,而是在它尝试回答第一个请求时。
任何人都知道连接到postgresql的其他宝石或任何解决方法吗?
编辑:好的,这里有一些澄清。
我在雪豹上开始了这个项目,它运行得很好,我安装了rvm,pg gem,webrick和ruby 1.9.2-p180,我升级到狮子并继续研究其他项目,当时间来更新这个项目,我得到Trace/BPT trap: 5
错误,服务器没有提供任何其他线索。我的猜测是,这是一个非常低级别的东西,ruby解释器甚至没有机会显示异常,这条消息与STDIO相关。
尝试解决这个问题我已经:重新安装了rvm,安装了ruby 1.9.2-p290,重新安装了postgresql,删除并重建了项目的gemset,安装了mongrel,然后应用程序崩溃了Web它获得了第一个Web请求,请注意它确实可以在rails控制台上运行。
编辑2:它现在在ruby-1.8.7-352上运行,所以它似乎是MAC OS X 10.7上的1.9.2相关问题
编辑3:XCODE 4.1问题是否与llvm编译器有关,并且当需要使用本机扩展构建时,它会执行“优化”。解决方案是安装兼容的Xcode,可以在RVM站点找到更多信息。
答案 0 :(得分:9)
我解决了这个问题 - 这是我的Gemfile中缺少“gem'pg'”的简单问题。出于各种原因,它已经被注释掉了。
答案 1 :(得分:1)
尝试以下方法:
gem uninstall pg
env ARCHFLAGS="-arch x86_64" gem install pg
我遇到了同样的问题,这个解决方案对我有用。我正在运行Ruby 1.9.2 p136,Rails 3.0.1,Postgresql 9.0.4和pg gem版本0.11.0。
我当然假设您已经正确配置了Gemfile以使用'gem pg',并且您没有任何其他数据库gem在那里活动,并且您有一个可以访问的工作数据库psql与rails中正确配置的database.yml文件相结合。
希望这适合你, 埃里克