Bug #17628
Updated by TomaisLeannan (Leannan Tomais) over 3 years ago
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: errors: ``` /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?