我正在开发一个使用 Ruby 2.3.0(使用 Rails)编写的应用程序,我的操作系统是 Linux Ubuntu 21.1。(希望升级项目的 Ruby 版本,但也遇到了麻烦)
为了让应用程序正常工作,我的第一个想法是使用 rbenv 安装 2.3.0,但经过多次故障排除后,我继续收到以下错误:
~$ rbenv install 2.3.0
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.bz2
Installing ruby-2.3.0...
WARNING: ruby-2.3.0 is past its end of life and is now unsupported.
It no longer receives bug fixes or critical security updates.
BUILD FAILED (Ubuntu 21.10 using ruby-build 20211203)
Inspect or clean up the working tree at /tmp/ruby-build.20211214112011.528089.XXe70o
Results logged to /tmp/ruby-build.20211214112011.528089.log
Last 10 log lines:
linking shared-object nkf.so
make[2]: Leaving directory '/tmp/ruby-build.20211214112011.528089.XXe70o/ruby-2.3.0/ext/nkf'
linking shared-object bigdecimal.so
make[2]: Leaving directory '/tmp/ruby-build.20211214112011.528089.XXe70o/ruby-2.3.0/ext/bigdecimal'
linking shared-object date_core.so
make[2]: Leaving directory '/tmp/ruby-build.20211214112011.528089.XXe70o/ruby-2.3.0/ext/date'
linking shared-object ripper.so
make[2]: Leaving directory '/tmp/ruby-build.20211214112011.528089.XXe70o/ruby-2.3.0/ext/ripper'
make[1]: Leaving directory '/tmp/ruby-build.20211214112011.528089.XXe70o/ruby-2.3.0'
错误日志文件:
我尝试使用以下方法安装 openssl 1.0:
~$ brew install rbenv/tap/openssl@1.0
x86_64cpuid.s: Assembler messages: x86_64cpuid.s:2: Error: unknown
pseudo-op: `.private_extern' x86_64cpuid.s:3: Error: unknown
pseudo-op: `.mod_init_func' x86_64cpuid.s:7: Error: unknown pseudo-op:
`.private_extern' make[1]: *** [<builtin>: x86_64cpuid.o] Error 1
make[1]: Leaving directory
'/tmp/opensslA1.0-20211213-493929-qg8eui/openssl-1.0.2t/crypto' make:
*** [Makefile:287: build_crypto] Error 1
If reporting this issue please do so at (not Homebrew/brew or
Homebrew/core): https://github.com/rbenv/homebrew-tap/issues
These open issues may also help: `brew install rbenv/tap/openssl@1.0` not working anymore https://github.com/rbenv/homebrew-tap/issues/1
我按照错误消息中的链接,并尝试了那里的建议:
~$ brew tap rbenv/tap
~$ brew install rbenv/tap/openssl@1.0
x86_64cpuid.s: Assembler messages:
x86_64cpuid.s:2: Error: unknown pseudo-op: `.private_extern'
x86_64cpuid.s:3: Error: unknown pseudo-op: `.mod_init_func'
x86_64cpuid.s:7: Error: unknown pseudo-op: `.private_extern'
make[1]: *** [<builtin>: x86_64cpuid.o] Error 1
make[1]: Leaving directory '/tmp/opensslA1.0-20211213-498635-w2ky1d/openssl-1.0.2t/crypto'
make: *** [Makefile:287: build_crypto] Error 1
If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):
https://github.com/rbenv/homebrew-tap/issues
These open issues may also help:
`brew install rbenv/tap/openssl@1.0` not working anymore https://github.com/rbenv/homebrew-tap/issues/1
我还尝试升级应用程序的 ruby 版本,并继续遇到错误 - 例如过时的依赖项。我是 ruby 和 rails 的新手,还在学习!
这是我的第一篇文章,如果它不是很好或者我错过了一些细节,请道歉。我很乐意提供所需的任何进一步信息。
非常感谢你的帮助。