Подтвердить что ты не робот

Установите любую версию рубина с RVM на mavericks

Я только что обновился до osx mavericks, и я хочу установить ruby ​​2.0, но я получаю ошибки configure: error: cannot run C compiled programs..

Я обновляю rvm с помощью rvm get stable, а затем набираю rvm install 2.0.0 и получаю сообщение об ошибке, направляющее меня в файл журнала. Файл журнала содержит:

configure: WARNING: unrecognized options: --without-tcl, --without-tk
checking build system type... x86_64-apple-darwin13.0.0
checking host system type... x86_64-apple-darwin13.0.0
checking target system type... x86_64-apple-darwin13.0.0
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... configure: error: in `/Users/mattroberts/.rvm/src/ruby-2.0.0-p247':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details

Итак, я попробовал перечислить версии, которые у меня есть. Он говорит мне, что у меня есть 1.9.3-p392, поэтому я удаляю его и переустанавливаю, чтобы убедиться, что это работает - такая же ошибка.

Нужно ли переустанавливать/обновлять xcode или есть другое решение?

Спасибо!

4b9b3361

Ответ 1

Если вы не обновили Xcode после обновления до Mavericks, вы должны сделать это После этого откройте командную строку и введите:
xcode-select --install

Это установит инструменты командной строки xcode, которые были удалены при обновлении OSX. После этого он должен работать нормально.

Ответ 2

Предлагаемые решения не помогли решить мою проблему (XCode на новейшей версии, установленные инструменты командной строки). Я использовал rvm install ruby-1.9.3 --with-gcc=clang, и это сработало.

Я думал, что rvm используется для использования clang для OSX по умолчанию. Не уверен, помню ли я что-то или что-то изменилось/это уже не самое лучшее. Тем не менее это сделало работу по установке для меня.

После комментария Edu, github rvm выдает страницу, на которую он ссылается, предупреждает:

@marksands, пожалуйста, убедитесь, что знаете, что вы делаете, ruby ​​1.9.3 скомпилированный с clang не является "безопасным", он может segfault, связанный с потоком которые следует ожидать, подумайте о переустановке ruby ​​--with-gcc = gcc42 или просто установите rvm install gcc 4.6, только ruby ​​2.0.0 полностью совместим с лязг

Эта проблема указывает на проблему с gcc46 на Mavericks:

В рассматриваемом камне используется другой язык - не C/С++, он использует Objective-C - так что это не ошибка компилятора, вы можете построить gcc-4.6 с поддержкой Objective-C - он просто не выполнен по умолчанию.

Теперь у вас есть два варианта: начать с uninstallig gcc-4.6 и то:

• Установите apple-gcc42

• Установите gcc-4.6 с параметром --enable-objc

Ответ 3

это должно быть исправлено, запустите:

rvm get head
rvm remove 1.9.3
rvm install 1.9.3

не использовать дополнительные флаги

Ответ 4

В результате для меня работала установка XCode , затем RUNNING Xcode, затем попытка переустановки.

Ответ 5

Выполнение

rvm_configure_env=('LDFLAGS=-L/opt/sm/pkg/active/lib' 'CFLAGS=-I/opt/sm/pkg/active/include' 'CPATH=/opt/sm/pkg/active/include')

Исправлена ​​ошибка моего компилятора в Mavericks

Ответ 6

Идти в ту же самую проблему (на 10.8.5, все обновлено). Ruby 2.0.0 установлен отлично, но не 1.9.3. Это решение сработало для меня.

cd в путь ruby ​​(найденный в config.log), тогда issue .configure (со всеми параметрами, найденными в config.log)

make
make install

Тогда:

rvm use 1.9.3 --create

Ответ 7

Решение:

unset SDKROOT

Это сработало для меня. Надеюсь, это и для вас.

Я попытался переустановить xcode вместе с инструментами разработки xcode. Не работает. Та же ошибка.

Попробуйте запустить с помощью env -i bash —noprofile —norc, чтобы узнать, не вызвали ли ваши проблемы env vars проблему.