From: "alanwu (Alan Wu)" Date: 2022-11-03T19:24:45+00:00 Subject: [ruby-core:110593] [Ruby master Bug#18876] OpenSSL fails to autoload in --with-static-linked-ext builds Issue #18876 has been updated by alanwu (Alan Wu). Subject changed from OpenSSL is not available with `--with-openssl-dir` to OpenSSL fails to autoload in --with-static-linked-ext builds @thomthom The issue was specific to `--with-static-linked-ext` builds, which you might not be using because it's not a popular way to build Ruby. You can check `ruby -ve 'p RbConfig::CONFIG["configure_args"]'` to see if you built with that option. Unrelated to the autoload issue, on macOS I found that I usually need to use OpenSSL from HomeBrew to get the extension working because the system LibreSSL is incompatible. You might want to check if `require 'openssl'` works. The autoload issue I described in that comment seems to be fixed on the master branch now. ---------------------------------------- Bug #18876: OpenSSL fails to autoload in --with-static-linked-ext builds https://bugs.ruby-lang.org/issues/18876#change-99925 * Author: Gloomy_meng (Gloomy Meng) * Status: Closed * Priority: Normal * ruby -v: 3.1.1 * Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- i try use ruby + gem in my macos app with .a framework, i need install ruby in a custom location. so i make & make install openssl with this configure: ``` shell /usr/bin/perl Configure --prefix="......./local/dependencies" no-shared zlib darwin64-x86_64-cc ``` then make & make install ruby with this configure: ``` shell /bin/sh configure --prefix /Users/xxxxx/xxxx/local/bundle --with-openssl-dir="/Users/xxxxx/xxxx/local/dependencies" --enable-load-relative --with-static-linked-ext --disable-install-doc --with-out-ext="xxxxxx" ``` ------ because i need to isolated environment, so i make `bundle-env` file for run shell. and i uploaded bundle-env file ------ and update gem by local ``` shell destroot/bundle/bin/bundle-env gem install downloads/rubygems-update-3.3.15.gem --no-document --env-shebang ``` at last, run install alway got exception: ``` shell destroot/bundle/bin/bundle-env gem install xxxxxxx --version="xxxxxx" --no-document --env-shebang ERROR: While executing gem ... (Gem::Exception) OpenSSL is not available. Install OpenSSL and rebuild Ruby (preferred) or use non-HTTPS sources ``` at the same env, i tried some command, and i got the right version what i make install ``` shell destroot/bundle/bin/bundle-env ruby --version // ruby 3.1.1p18 (2022-02-18 revision 53f5fc4236) [x86_64-darwin21] destroot/bundle/bin/bundle-env gem --version // 3.3.15 destroot/bundle/bin/bundle-env ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION' // OpenSSL 1.1.1i 8 Dec 2020 ``` ------ i found and uploaded `ext/openssl/mkmf.log` and ---Files-------------------------------- bundle-env (852 Bytes) mkmf.log (215 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: