Ruby Bundler sqlite3扩展依赖于用户中的本地libruby';s文件夹

Ruby Bundler sqlite3扩展依赖于用户中的本地libruby';s文件夹,ruby,rubygems,bundler,rbenv,sqlite3-ruby,Ruby,Rubygems,Bundler,Rbenv,Sqlite3 Ruby,操作系统:macoswithbrew Ruby版本管理器:rbenv 我正在使用bundler(2.1.4)部署我的应用程序,其中包含所有必需的gem 我目前正在使用Ruby 2.2.4,并试图更新到Ruby 2.5.5。我还更新了各种宝石的最新版本 我对bundler在libruby.2.5.dylib上引入对已编译扩展的依赖性存在问题。此库位于本地用户文件夹中的本地.rbenv文件夹中。这会导致应用程序在其他用户的计算机上启动时失败,因为此文件当然不可用 有趣的是,Ruby的前一个版本(2.

操作系统:
macos
with
brew

Ruby版本管理器:
rbenv

我正在使用
bundler
(2.1.4)部署我的应用程序,其中包含所有必需的gem

我目前正在使用Ruby 2.2.4,并试图更新到Ruby 2.5.5。我还更新了各种宝石的最新版本

我对
bundler
libruby.2.5.dylib
上引入对已编译扩展的依赖性存在问题。此库位于本地用户文件夹中的本地
.rbenv
文件夹中。这会导致应用程序在其他用户的计算机上启动时失败,因为此文件当然不可用

有趣的是,Ruby的前一个版本(2.2.4)没有出现这种情况。如果以
sqlite3
为例,我有以下内容

Ruby 2.2.4和sqlite Ruby 1.3.13

otool -L /Users/dev-user/dev/MCTools/src/mct-tools/ext/gems/ruby/2.2.0/extensions/x86_64-darwin-19/2.2.0-static/sqlite3-1.3.13/sqlite3/sqlite3_native.bundle
/Users/dev-user/dev/MCTools/src/mct-tools/ext/gems/ruby/2.2.0/extensions/x86_64-darwin-19/2.2.0-static/sqlite3-1.3.13/sqlite3/sqlite3_native.bundle:
        /usr/lib/libsqlite3.dylib (compatibility version 9.0.0, current version 308.4.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1281.100.1)
        /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
Ruby 2.5.5和sqlite Ruby 1.4.2

otool -L /Users/dev-user/dev/MCTools/src/mct-tools/ext/gems/ruby/2.5.0/extensions/x86_64-darwin-19/2.5.0/sqlite3-1.4.2/sqlite3/sqlite3_native.bundle
/Users/dev-user/dev/MCTools/src/mct-tools/ext/gems/ruby/2.5.0/extensions/x86_64-darwin-19/2.5.0/sqlite3-1.4.2/sqlite3/sqlite3_native.bundle:
        /Users/dev-user/.rbenv/versions/2.5.5/lib/libruby.2.5.dylib (compatibility version 2.5.0, current version 2.5.5)
        /usr/lib/libsqlite3.dylib (compatibility version 9.0.0, current version 308.5.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1281.100.1)
        /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
正如您所看到的,现在存在对

/Users/dev-user/.rbenv/versions/2.5.5/lib/libruby.2.5.dylib (compatibility version 2.5.0, current version 2.5.5)
当然,它在其他机器上是不可用的。这种行为在所有编译的gem中都很常见(我有5个)

我希望
bundle-package
会有所帮助,但如果在
bundle-install
之前运行它,我会得到同样的结果


您知道如何删除此依赖项或任何其他替代解决方案吗?

编译Ruby时,您可以将
--enable load relative
标志传递到
/configure
以从已编译的二进制文件中删除(某些?)绝对路径。这也可能会影响扩展