From: xtkoba+ruby@... Date: 2021-02-14T09:34:41+00:00 Subject: [ruby-core:102486] [Ruby master Bug#17628] macOS Ruby 3.0.0 source build compilation errors w/ OpenSSL 3.0.0-alpha12-dev Issue #17628 has been updated by xtkoba (Tee KOBAYASHI). There exists a related issue in GitHub: https://github.com/ruby/openssl/issues/369 ---------------------------------------- Bug #17628: macOS Ruby 3.0.0 source build compilation errors w/ OpenSSL 3.0.0-alpha12-dev https://bugs.ruby-lang.org/issues/17628#change-90378 * Author: TomaisLeannan (Leannan Tomais) * Status: Open * Priority: Normal * ruby -v: N/A * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN ---------------------------------------- Following [this guide](https://www.ruby-lang.org/en/documentation/installation/#building-from-source) and [Ruby 3.0.0](https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.0.tar.gz) I attempted to install Ruby 3.0.0 from source on macOS Catalina 10.15.7, but failed. When running "make" after "./configure" in the extracted Ruby directory, I saw some compilation errors regarding deprecated OpenSSL headers. I am using OpenSSL 3.0.0-alpha12-dev. OpenSSL 3.0.0-alpha12-dev (Library: OpenSSL 3.0.0-alpha12-dev ) built on: Sat Jan 30 14:16:25 2021 UTC platform: darwin64-x86_64 options: bn(64,64) compiler: cc -fPIC -arch x86_64 -O3 -Wall -DL_ENDIAN -DOPENSSL_PIC -D_REENTRANT -DOPENSSL_BUILDING_OPENSSL -DNDEBUG Here are some example compilation errors. There are many, many others just like the ones below: ``` /usr/local/include/openssl/evp.h:1271:1: note: 'EVP_PKEY_get0_EC_KEY' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 ^ /usr/local/include/openssl/macros.h:180:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0' # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0) ^ /usr/local/include/openssl/macros.h:60:52: note: expanded from macro 'OSSL_DEPRECATED' # define OSSL_DEPRECATED(since) __attribute__((deprecated)) ^ ossl_pkey_ec.c:383:13: warning: 'EC_KEY_set_public_key' is deprecated [-Wdeprecated-declarations] switch (EC_KEY_set_public_key(ec, point)) { ^ /usr/local/include/openssl/ec.h:1063:1: note: 'EC_KEY_set_public_key' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 int EC_KEY_set_public_key(EC_KEY *key, const EC_POINT *pub); ``` It looks like that the OpenSSL version I'm using is perhaps too cutting edge? -- https://bugs.ruby-lang.org/ Unsubscribe: