mysql2 0x0000000000000000 处的分段错误

问题描述 投票:0回答:2

我从我的 FreeBSD 11.3 上的端口安装了 redmine 现在尝试从浏览器访问它并崩溃。 错误日志显示如下。

    /usr/local/lib/ruby/gems/2.6/gems/activesupport-4.2.11.1/lib/active_support/core_ext/object/duplicable.rb:111: warning: BigDecimal.new is deprecated; use BigDecimal() method instead.
    /usr/local/lib/ruby/gems/2.6/gems/mysql2-0.4.10/lib/mysql2/mysql2.so: [BUG] Segmentation fault at 0x0000000000000000
    ruby 2.6.6p146 (2020-03-31 revision 67876) [amd64-freebsd11]
-- Control frame information -----------------------------------------------
c:0027 p:-4313666350 s:0131 e:000130 TOP    [FINISH]
c:0026 p:---- s:0128 e:000127 CFUNC  :require
c:0025 p:0261 s:0123 e:000122 TOP    /usr/local/lib/ruby/gems/2.6/gems/mysql2-0.4.10/lib/mysql2.rb:31 [FINISH]
c:0024 p:---- s:0119 e:000118 CFUNC  :require
c:0023 p:0033 s:0114 e:000113 BLOCK  /usr/local/lib/ruby/gems/2.6/gems/bundler-2.0.2/lib/bundler/runtime.rb:81 [FINISH]

输出要长得多,我把它缩短了,这是堆栈中最顶层的错误。 我不确定哪个社区会更好地解决这个问题,所以我决定先在这里问。

mysql ruby rubygems redmine
2个回答
2
投票

我今天在 ubuntu 20.04 和 msql2 -v 0.5.1 上遇到了类似的问题。问题解决方案:

sudo apt remove libmysqlclient-dev
sudo apt install libmariadbclient-dev
gem install mysql2 -v '0.5.1' 

这里有更详细的描述: https://github.com/brianmario/mysql2/issues/1075

或更高版本:

sudo apt remove libmariadbd-dev
sudo apt install libmariadbd-dev
gem install mysql2 -v 'your version' 


1
投票

libmariadbclient-dev 在 ubuntu 22 上对我来说不存在:必须安装 libmariadbd-dev 并重新安装 mysql2 gem。

© www.soinside.com 2019 - 2024. All rights reserved.