我正在处理 bundle install 步骤时遇到问题。这个错误一直出现。
(...)
正在安装 sassc-rails 2.1.2
正在安装 discourse-ember-rails 0.18.6
Gem::Ext::BuildError: 错误:无法构建 gem 原生扩展。
当前目录:/home/archie/gems/gems/openssl-2.2.1/ext/openssl
/usr/bin/ruby3.0 -I /usr/lib/ruby/vendor_ruby -r
./siteconf20220430-16096-soaves.rb extconf.rb
检查 -lnsl 中的 t_open()... 否
检查 -lsocket 中的 socket()... 否
检查 openssl/ssl.h... 是
检查 -lcrypto 中的 CRYPTO_malloc()... 是
检查 -lssl 中的 SSL_new()... 是
检查 openssl/opensslv.h 中的 LIBRESSL_VERSION_NUMBER... 否
检查 OpenSSL 版本 >= 1.0.1 且 < 3.0.0... 否
*** extconf.rb 失败 ***
由于某种原因,无法创建 Makefile,可能是由于缺少必要的
库和/或头文件。请检查 mkmf.log 文件以获取更多详细信息。您可能
需要配置选项。
提供的配置选项:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/bin/$(RUBY_BASE_NAME)3.0
--with-openssl-dir
--without-openssl-dir
--with-openssl-include
--without-openssl-include=${openssl-dir}/include
--with-openssl-lib
--without-openssl-lib=${openssl-dir}/lib
--with-kerberos-dir
--without-kerberos-dir
--with-kerberos-include
--without-kerberos-include=${kerberos-dir}/include
--with-kerberos-lib
--without-kerberos-lib=${kerberos-dir}/lib
--with-debug
--without-debug
--enable-debug
--disable-debug
--with-nsl-dir
--without-nsl-dir
--with-nsl-include
--without-nsl-include=${nsl-dir}/include
--with-nsl-lib
--without-nsl-lib=${nsl-dir}/lib
--with-nsllib
--without-nsllib
--with-socket-dir
--without-socket-dir
--with-socket-include
--without-socket-include=${socket-dir}/include
--with-socket-lib
--without-socket-lib=${socket-dir}/lib
--with-socketlib
--without-socketlib
--with-openssl-config
--without-openssl-config
--with-pkg-config
--without-pkg-config
--with-crypto-dir
--without-crypto-dir
--with-crypto-include
--without-crypto-include=${crypto-dir}/include
--with-crypto-lib
--without-crypto-lib=${crypto-dir}/lib
--with-cryptolib
--without-cryptolib
--with-ssl-dir
--without-ssl-dir
--with-ssl-include
--without-ssl-include=${ssl-dir}/include
--with-ssl-lib
--without-ssl-lib=${ssl-dir}/lib
--with-ssllib
--without-ssllib
extconf.rb:113:in `<main>':需要 OpenSSL >= 1.0.1 且 < 3.0.0 或 LibreSSL >= 2.5.0 (RuntimeError)
要查看此扩展为何无法编译,请检查 mkmf.log 文件,该文件可以在此处找到:
/home/archie/gems/extensions/x86_64-linux/3.0.0/openssl-2.2.1/mkmf.log
extconf 失败,退出代码 1
Gem 文件将保留在 /home/archie/gems/gems/openssl-2.2.1 中以供检查。
结果已记录到
/home/archie/gems/extensions/x86_64-linux/3.0.0/openssl-2.2.1/gem_make.out
/usr/lib/ruby/vendor_ruby/rubygems/ext/builder.rb:95:in `run'
/usr/lib/ruby/vendor_ruby/rubygems/ext/ext_conf_builder.rb:47:in `block in
build'
/usr/lib/ruby/3.0.0/tempfile.rb:317:in `open'
/usr/lib/ruby/vendor_ruby/rubygems/ext/ext_conf_builder.rb:26:in `build'
/usr/lib/ruby/vendor_ruby/rubygems/ext/builder.rb:161:in `build_extension'
/usr/lib/ruby/vendor_ruby/rubygems/ext/builder.rb:195:in `block in
build_extensions'
/usr/lib/ruby/vendor_ruby/rubygems/ext/builder.rb:192:in `each'
/usr/lib/ruby/vendor_ruby/rubygems/ext/builder.rb:192:in `build_extensions'
/usr/lib/ruby/vendor_ruby/rubygems/installer.rb:847:in `build_extensions'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/rubygems_gem_installer.rb:71:in
`build_extensions'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/rubygems_gem_installer.rb:28:in
`install'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/source/rubygems.rb:204:in
`install'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/installer/gem_installer.rb:54:in
`install'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/installer/gem_installer.rb:16:in
`install_from_spec'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/installer/parallel_installer.rb:186:in
`do_install'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/installer/parallel_installer.rb:177:in
`block in worker_pool'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/worker.rb:62:in
`apply_func'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/worker.rb:57:in
`block in process_queue'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/worker.rb:54:in
`loop'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/worker.rb:54:in
`process_queue'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/worker.rb:91:in
`block (2 levels) in create_threads'
安装 openssl (2.2.1) 时出错,Bundler 无法继续。
在 Gemfile 中:
cose 解析为 1.2.0,它依赖于
openssl-signature_algorithm 解析为 1.1.1,它依赖于
openssl