קבלת שגיאה בבניית dev בשלב "bundle install"

סיכום מבוסס בינה מלאכותית

User chithanhdakrnong encountered a Gem::Ext::BuildError while running bundle install during a dev build, specifically failing to build the openssl native extension due to missing or incompatible OpenSSL libraries. The error log indicates the system found openssl/ssl.h but failed to detect OpenSSL version 1.0.1 to 3.0.0, and also reported missing libnsl and libsocket. pfaffman suggested that the OpenSSL libraries may not be installed and advised checking the setup script or searching online for the correct installation command. JammyDodger shared a helpful link to a guide on installing Discourse on Ubuntu 20.04, which may contain relevant setup steps. chithanhdakrnong thanked the contributors and confirmed they would try the suggested solutions.

Gem::Ext::BuildError: ERROR: Failed to build gem
native extension.

current directory:
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/openssl-2.2.1/ext/openssl
/data/data/com.termux/files/usr/bin/ruby -I
/data/data/com.termux/files/usr/lib/ruby/3.1.0
-r ./siteconf20220510-26220-kiro8b.rb extconf.rb
checking for t_open() in -lnsl... no
checking for socket() in -lsocket... no
checking for openssl/ssl.h... yes
checking for LIBRESSL_VERSION_NUMBER in
openssl/opensslv.h... no
checking for OpenSSL version >= 1.0.1 and <
3.0.0... no
*** extconf.rb failed ***
Could not create Makefile due to some reason,
probably lack of necessary
libraries and/or headers.  Check the mkmf.log
file for more details.  You may
need configuration options.

Provided configuration options:
        --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=/data/data/com.termux/files/usr/bin/$(RUBY_BASE_NAME)
        --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
extconf.rb:113:in `<main>': OpenSSL >= 1.0.1, <
3.0.0 or LibreSSL >= 2.5.0 is required
(RuntimeError)

To see why this extension failed to compile,
please check the mkmf.log which can be found
here:

/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/extensions/aarch64-linux-android/3.1.0/openssl-2.2.1/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/openssl-2.2.1
for inspection.
Results logged to
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/extensions/aarch64-linux-android/3.1.0/openssl-2.2.1/gem_make.out

/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/ext/builder.rb:95:in
`run'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/ext/ext_conf_builder.rb:47:in
`block in build'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/tempfile.rb:317:in
`open'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/ext/ext_conf_builder.rb:26:in
`build'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/ext/builder.rb:161:in
`build_extension'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/ext/builder.rb:195:in
`block in build_extensions'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/ext/builder.rb:192:in
`each'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/ext/builder.rb:192:in
`build_extensions'
/data/data/com.termux/files/usr/lib/ruby/3.1.0/rubygems/installer.rb:853:in
`build_extensions'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/rubygems_gem_installer.rb:71:in
`build_extensions'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/rubygems_gem_installer.rb:28:in
`install'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/source/rubygems.rb:204:in
`install'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/installer/gem_installer.rb:54:in
`install'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/installer/gem_installer.rb:16:in
`install_from_spec'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/installer/parallel_installer.rb:186:in
`do_install'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/installer/parallel_installer.rb:177:in
`block in worker_pool'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/worker.rb:62:in
`apply_func'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/worker.rb:57:in
`block in process_queue'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/worker.rb:54:in
`loop'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/worker.rb:54:in
`process_queue'
/data/data/com.termux/files/usr/lib/ruby/gems/3.1.0/gems/bundler-2.3.13/lib/bundler/worker.rb:91:in
`block (2 levels) in create_threads'

An error occurred while installing
openssl (2.2.1), and Bundler cannot
continue.

In Gemfile:
  cose was resolved to 1.2.0, which depends on
openssl-signature_algorithm was resolved to
1.1.1, which depends on
      openssl

Help me
Im almost done

Looks like open ssl libraries are not installed. I’d Google that and/or look in the setup script to find the command and run it by hand to see if it works.

Is this Ubuntu Linux?

@SaraDev posted this the other day if it’s any help?

Thanks!

Definently will try that.