From: mail@... Date: 2021-02-07T23:41:06+00:00 Subject: [ruby-core:102414] [Ruby master Bug#17486] Build fails on darwin due to libtool being removed Issue #17486 has been updated by charlesbjohnson (Charles Johnson). I'm running into this exact same issue, it fails on both Catalina and Big Sur. ``` $ ASDF_RUBY_BUILD_VERSION=master RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl) --with-readline-dir=$(brew --prefix readline)" asdf install ruby 3.0.0 Downloading ruby-build... Cloning into '/Users/cbjohnson/.asdf/plugins/ruby/ruby-build-source'... remote: Enumerating objects: 18, done. remote: Counting objects: 100% (18/18), done. remote: Compressing objects: 100% (13/13), done. remote: Total 11325 (delta 4), reused 11 (delta 3), pack-reused 11307 Receiving objects: 100% (11325/11325), 2.41 MiB | 7.18 MiB/s, done. Resolving deltas: 100% (7471/7471), done. Already on 'master' Downloading ruby-3.0.0.tar.gz... -> https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.0.tar.gz Installing ruby-3.0.0... BUILD FAILED (macOS 11.2 using ruby-build 20210119) Inspect or clean up the working tree at /var/folders/4y/t1_w3pf12k31z9tmf4hh79tr0000gn/T/ruby-build.20210207172219.84379.QJCgoQ Results logged to /var/folders/4y/t1_w3pf12k31z9tmf4hh79tr0000gn/T/ruby-build.20210207172219.84379.log Last 10 log lines: linking shared-object digest.bundle linking shared-object etc.bundle linking shared-object dbm.bundle make[2]: Leaving directory `/private/var/folders/4y/t1_w3pf12k31z9tmf4hh79tr0000gn/T/ruby-build.20210207172219.84379.QJCgoQ/ruby-3.0.0/ext/digest' make[2]: Leaving directory `/private/var/folders/4y/t1_w3pf12k31z9tmf4hh79tr0000gn/T/ruby-build.20210207172219.84379.QJCgoQ/ruby-3.0.0/ext/etc' make[2]: Leaving directory `/private/var/folders/4y/t1_w3pf12k31z9tmf4hh79tr0000gn/T/ruby-build.20210207172219.84379.QJCgoQ/ruby-3.0.0/ext/dbm' linking shared-object date_core.bundle make[2]: Leaving directory `/private/var/folders/4y/t1_w3pf12k31z9tmf4hh79tr0000gn/T/ruby-build.20210207172219.84379.QJCgoQ/ruby-3.0.0/ext/date' gmake[1]: Leaving directory '/private/var/folders/4y/t1_w3pf12k31z9tmf4hh79tr0000gn/T/ruby-build.20210207172219.84379.QJCgoQ/ruby-3.0.0' gmake: *** [uncommon.mk:300: build-ext] Error 2 $ xcodebuild -version Xcode 12.4 Build version 12D4e $ sw_vers ProductName: macOS ProductVersion: 11.2 BuildVersion: 20D64 ``` ---------------------------------------- Bug #17486: Build fails on darwin due to libtool being removed https://bugs.ruby-lang.org/issues/17486#change-90286 * Author: dark.panda (J Smith) * Status: Feedback * Priority: Normal * ruby -v: ruby 3.0.0p0 (2020-12-25 revision ccb58c9f76) [x86_64-darwin18] * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN ---------------------------------------- The following commit is causing builds in master and for the recently released Ruby 3.0.0 to fail on darwin. This was tested on macOS Mojave using the most recent XCode and Mojave patches. The error reported is as follows: ``` compiling bigdecimal.c In file included from bigdecimal.c:13: ./bigdecimal.h:122:1: error: redefinition of 'rb_array_const_ptr' rb_array_const_ptr(VALUE a) ^ ../.././include/ruby/internal/core/rarray.h:184:1: note: previous definition is here rb_array_const_ptr(VALUE a) ^ In file included from bigdecimal.c:13: ./bigdecimal.h:139:1: error: static declaration of 'rb_sym2str' follows non-static declaration rb_sym2str(VALUE sym) ^ ../.././include/ruby/internal/symbol.h:63:7: note: previous declaration is here VALUE rb_sym2str(VALUE); ^ bigdecimal.c:109:1: error: static declaration of 'rb_rational_num' follows non-static declaration rb_rational_num(VALUE rat) ^ ../.././include/ruby/internal/intern/rational.h:39:7: note: previous declaration is here VALUE rb_rational_num(VALUE rat); ^ bigdecimal.c:121:1: error: static declaration of 'rb_rational_den' follows non-static declaration rb_rational_den(VALUE rat) ^ ../.././include/ruby/internal/intern/rational.h:40:7: note: previous declaration is here VALUE rb_rational_den(VALUE rat); ^ bigdecimal.c:133:1: error: static declaration of 'rb_complex_real' follows non-static declaration rb_complex_real(VALUE cmp) ^ ../.././include/ruby/internal/intern/complex.h:38:7: note: previous declaration is here VALUE rb_complex_real(VALUE z); ^ bigdecimal.c:145:1: error: static declaration of 'rb_complex_imag' follows non-static declaration rb_complex_imag(VALUE cmp) ^ ../.././include/ruby/internal/intern/complex.h:39:7: note: previous declaration is here VALUE rb_complex_imag(VALUE z); ^ 6 errors generated. make[2]: *** [bigdecimal.o] Error 1 make[1]: *** [ext/bigdecimal/all] Error 2 make: *** [build-ext] Error 2 ``` Reverting the following commit allows the build to run successfully: https://github.com/ruby/ruby/commit/ed01cc8fdc845b1db258eb3e35b3ba834463672e After reverting this commit on either master or the v3_0_0 tag, I was able to successfully build again. -- https://bugs.ruby-lang.org/ Unsubscribe: