Search code examples
rubyxcodervmmacos-mojave

Unable to install any Ruby with RVM on MacOS 10.14.2 Mojave: Error running '__rvm_make -j4'


After upgrading MacOS to 10.14.2 Mojave, I'm not able to install any Ruby Version with RVM anymore. It always gives an error like this:

$rvm install 2.5.3
ruby-2.5.3 - #removing src/ruby-2.5.3..
Searching for binary rubies, this might take some time.
No binary rubies available for: osx/10.14/x86_64/ruby-2.5.3.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for osx.
Certificates bundle '/usr/local/etc/[email protected]/cert.pem' is already up to date.
Requirements installation successful.
Installing Ruby from source to: /Users/jdinse/.rvm/rubies/ruby-2.5.3, this may take a while depending on your cpu(s)...
ruby-2.5.3 - #downloading ruby-2.5.3, this may take a while depending on your connection...
ruby-2.5.3 - #extracting ruby-2.5.3 to /Users/jdinse/.rvm/src/ruby-2.5.3.....
ruby-2.5.3 - #configuring....................................................................
ruby-2.5.3 - #post-configuration.
ruby-2.5.3 - #compiling....................
Error running '__rvm_make -j4',
please read /Users/jdinse/.rvm/log/1547136259_ruby-2.5.3/make.log

There has been an error while running make. Halting the installation.

Looking into make.log, the only errors are like this:

making srcs under enc
make[1]: Nothing to be done for `srcs'.
generating transdb.h
linking static-library libruby.2.5.3-static.a
libtool: object: dln.o malformed object (unknown load command 1)
libtool: object: localeinit.o malformed object (unknown load command 1)
libtool: object: loadpath.o malformed object (unknown load command 1)
libtool: object: array.o malformed object (unknown load command 1)
libtool: object: bignum.o malformed object (unknown load command 1)
libtool: object: class.o malformed object (unknown load command 1)
...

What I've tried so far:

  • reinstalled RVM
  • trying previous RVM 1.29.6 or master branch
  • reinstalled Homebrew
  • reinstalled XCode
  • reinstalled Command Line Tools
  • installed gcc, gcc@7 or gcc@8 with homebrew, or uninstalled all of them
  • installed openssl or [email protected], or uninstalled all of them

Nothing of this nor any other tips of similar questions helped.

Any ideas? Or any idea what caused the error libtool: object: dln.o malformed object (unknown load command 1) and how to fix it?


Solution

  • I ran into this issue as well. In my case it was due to MacPorts being outdated after I upgraded to (MacOS) Mojave.

    I followed the steps listed on MacPorts' migration guide here: https://trac.macports.org/wiki/Migration

    Closed and reopened Terminal (just b/c)

    ran rvm install ruby and got Install of ruby-2.6.0 - #complete, hooray!