你好这是我的第一个问题。我正试图在我的服务器上建立一个红地雷系统,但也面临一些问题。
我的系统- ubuntu20.04 + nginx1.18 +maradb10.3.30+ ruby2.7.4 +redbre-4.2.2/使用rbenv安装ruby
当我试图连接红矿服务器时,我得到了这个错误
App 716658 output: Error: The application encountered the following error: libruby.so.2.7: cannot open shared object file: No such file or directory - /opt/redmine/vendor/cache/ruby/2.7.0/gems/mysql2-0.5.3/lib/mysql2/mysql2.so (LoadError)所以我做了cd /usr/lib
ln -s /root/.rbenv/versions/2.7.4/lib/libruby.so.2.7 libruby.so.2.7
然后发生不兼容的库版本错误。
App 722799 output: Error: The application encountered the following error: incompatible library version - /opt/redmine/vendor/cache/ruby/2.7.0/gems/mysql2-0.5.3/lib/mysql2/mysql2.so (LoadError)我试过gem pristine --all,但没有起作用。
我该如何解决这个问题?发生了这么多错误,所以我想我的设置有一个问题。
gem env
- RUBYGEMS VERSION: 3.2.25
- RUBY VERSION: 2.7.4 (2021-07-07 patchlevel 191) [x86_64-linux]
- INSTALLATION DIRECTORY: /root/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0
- USER INSTALLATION DIRECTORY: /root/.gem/ruby/2.7.0
- RUBY EXECUTABLE: /root/.rbenv/versions/2.7.4/bin/ruby
- GIT EXECUTABLE: /usr/bin/git
- EXECUTABLE DIRECTORY: /root/.rbenv/versions/2.7.4/bin
- SPEC CACHE DIRECTORY: /root/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /root/.rbenv/versions/2.7.4/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /root/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0
- /root/.gem/ruby/2.7.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /root/.rbenv/versions/2.7.4/bin
- /root/.rbenv/libexec
- /root/.rbenv/plugins/ruby-build/bin
- /root/.rbenv/shims
- /root/.rbenv/bin
- /usr/local/sbin
- /usr/local/bin
- /usr/sbin
- /usr/bin
- /sbin
- /bin
- /usr/games
- /usr/local/games
- /snap/bin丛env
Bundler 2.2.25
Platforms ruby, x86_64-linux
Ruby 2.7.4p191 (2021-07-07 revision a21a3b7d23704a01d34bd79d09dc37897e00922a) [x86_64-linux]
Full Path /root/.rbenv/versions/2.7.4/bin/ruby
Config Dir /root/.rbenv/versions/2.7.4/etc
RubyGems 3.2.25
Gem Home /root/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0
Gem Path /root/.gem/ruby/2.7.0:/root/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0
User Home /root
User Path /root/.gem/ruby/2.7.0
Bin Dir /root/.rbenv/versions/2.7.4/bin
Tools
Git 2.25.1
RVM not installed
rbenv rbenv 1.1.2-61-g585ed84
chruby not installedBundler构建元数据
Built At 2021-07-30
Git SHA 7f0f257c7a
Released Version true发布于 2021-08-03 16:13:09
您似乎已经配置了bundler ( Ruby的一个创业板版本管理器),将Redmine的gems安装在与通常的系统gems不同的位置,即/opt/redmine/vendor/cache。
因此,通常的gem命令不会触及那些安装在绑定程序中的宝石,因为gem不知道它们。要重新安装所有邦德勒托管的gems,您可以在您的Redmine目录(i/e/包含Gemfile的目录)中运行以下命令
bundle pristine这实际上与gem pristine --all相同,但只适用于绑定程序管理的宝石。详情请参见文献资料。
https://stackoverflow.com/questions/68639242
复制相似问题