ruby-odbc和ruby 3.2.2:未定义符号:rb_pointed_str_new

mbzjlibv  于 2023-05-22  发布在  Ruby
关注(0)|答案(1)|浏览(133)

ruby-odbc在ruby 3.2.x上出现错误,原因如下:

ruby-odbc-0.99999/lib/odbc.so: undefined symbol: rb_tainted_str_new

现在,Ruby C方法rb_tainted_str_new被删除了。你知道有什么补丁可以解决这个问题吗?
一般来说,有没有人维护这个宝石?

rjee0c15

rjee0c151#

只要gem没有使用污点机制驱动任何逻辑,就可以通过将rb_tainted_str_new替换为rb_str_new(这应该包括将rb_tainted_str_new2替换为rb_str_new2)并删除对rb_obj_taint的任何调用来进行简单的修补。
看起来好像有人已经用forked ruby-odbc来完成这个任务:https://github.com/vhermecz/ruby-odbc/commit/c38d182863b907f9ce55d2dfeb9bd86e698f8968
在你的gemfile中,你可以安装他们的补丁版本:

gem 'ruby-odbc', github: 'vhermecz/ruby-odbc'

相关问题