Сборка Ruby из исходного кода на Mac, не работает - PullRequest
1 голос
/ 02 января 2011

Я пытаюсь собрать Ruby 1.9.2 из исходного кода на Snow Leopard, и я получаю эту ошибку:

readline.c: In function ‘username_completion_proc_call’:
readline.c:1292: error: ‘username_completion_function’ undeclared (first use in this function)
readline.c:1292: error: (Each undeclared identifier is reported only once
readline.c:1292: error: for each function it appears in.)
make[1]: *** [readline.o] Error 1
make: *** [mkmain.sh] Error 1

Я основываюсь на этого урока , и возникает ошибка, когда я выполняю команду make.

У меня уже установлена ​​1.8.7, но я хочу обновить ее до последней версии и пока не нашел надежного и простого способа сделать это.

Ответы [ 3 ]

2 голосов
/ 02 января 2011

Самый простой способ обновления до последней версии Ruby на Snow Leopard - использовать RVM (Менеджер версий Ruby)

2 голосов
/ 02 января 2011

Если вы не обновили свою версию XCode, которая была на DVD, сделайте это с сайта разработчика Apple . XCode на DVD имеет некоторые ошибки. Вы должны зарегистрироваться, но это бесплатно.

Snow Leopard имеет 1.8.7 установлен, но это для использования Apple; Они устанавливают код, который на самом деле использует Ruby, и возиться с их Ruby или установленным кодом может привести к поломке. Вы можете некоторое время не знать, что что-то сломалось, пока что-то не работает должным образом, поэтому лучше оставить их установку в покое и вставить ее для собственного использования.

Как говорят другие ответы, RVM - отличный способ установить Ruby для собственного использования. Вам не нужно устанавливать в /usr/local/bin и вы определенно не хотите перезаписывать Ruby в /usr/bin. RVM решает эту проблему путем установки в ~/.rvm. Вы можете установить несколько Ruby вместе с драгоценными камнями, связанными с Ruby, создавать наборы драгоценных камней, копировать их, удалять или перекомпилировать конкретный Ruby или удалять все это, не затрагивая установленные Apple Rubyies. RVM активно разрабатывается и часто обновляется, и автор очень чутко реагирует на вопросы.

У RVM есть страница, посвященная проблемам readline . Он специфичен для работы с RVM, но может помочь, если вы хотите отказаться от использования RVM и заняться чем-то другим.

1 голос
/ 02 января 2011

Я бы использовал rvm , это, безусловно, самый простой способ получить ruby-компилятор и множество других преимуществ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...