Невозможно установить любую версию ruby ​​в Mojave - внутренняя команда ranlib завершилась неудачно - PullRequest
0 голосов
/ 25 января 2019

Я знаю, что есть несколько проблем с силимаром, но я не могу найти ту, которая соответствует моей проблеме.

Я не могу установить ни одну версию ruby ​​ни с rvm, ни с rbenv. Оба приводят к одной и той же ошибке. Например, вот выдержка из логов при установке ruby ​​2.5.3:

compiling loadpath.c
making srcs under enc
linking static-library libruby.2.5.3-static.a
make[1]: Nothing to be done for `srcs'.
generating transdb.h
/opt/local/bin/ranlib: object: libruby.2.5.3-static.a(dln.o) malformed object (unknown load command 1)
ar: internal ranlib command failed
make: *** [libruby.2.5.3-static.a] Error 1
make: *** Waiting for unfinished jobs....
transdb.h updated

Кажется, проблема здесь:

/opt/local/bin/ranlib: object: libruby.2.5.3-static.a(dln.o) malformed object (unknown load command 1)
ar: internal ranlib command failed
make: *** [libruby.2.5.3-static.a] Error 1

Что я пробовал

  • Установка, переустановка, удаление rvm, rbenv.
  • Обновление, переустановка XCode.
  • Удаление, установка, инструменты командной строки XCode.

Что вызывает это?

Обновление

gcc --version возвращает:

gcc --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/c++/4.2.1
Apple LLVM version 10.0.0 (clang-1000.10.44.4)
Target: x86_64-apple-darwin18.0.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Ответы [ 3 ]

0 голосов
/ 01 марта 2019

Для всех, кто наступает на ту же мину, для меня это была несовместимая копия ranlib из homebrew через пакет cctools.Чтобы это исправить, я просто удалил его:

brew uninstall cctools

0 голосов
/ 28 марта 2019

Для тех, кто находит это и не помогает вышеуказанным решением ...

Я тоже столкнулся с этой проблемой. В моем случае это произошло из-за того, что MacPorts устарел после того, как я перешел на (MacOS) Mojave.

Я выполнил шаги, перечисленные в руководстве по миграции MacPorts здесь: https://trac.macports.org/wiki/Migration

Закрытый и вновь открытый Терминал (только ч / б)

побежал rvm install ruby и получил Install of ruby-2.6.0 - #complete, ура!

0 голосов
/ 29 января 2019

Итак, я думаю, исправление было запущено:

$ sudo xcodebuild -runFirstLaunch

Почему?Я не уверен.Я подозреваю, что я пытался собрать ruby ​​перед обновлением XCode.Но как только я обновил XCode, я подозреваю, что на неправильную / более старую утилиту командной строки все еще ссылались.

Я не знаю точно, что это исправило, но я полностью удалил XCode, а ruby ​​все еще не установился.

Затем я полностью удалил инструменты командной строки, а ruby ​​по-прежнему не устанавливался.

Затем я переустановил только инструменты командной строки без XCode, и ruby ​​по-прежнему не установился.

Затем я запустил команду runFirstLaunch и установил ruby.

...