В настоящее время я пытаюсь установить гем nfoiled, который предоставляет рубиновый интерфейс для ncurses. Я делаю это с помощью gem install elliottcable-nfoiled
, как указано в README. Загрузка его вручную из репозитория github, а затем установка с помощью rake install
не работает из-за проблемы с echoe-gem, поэтому я вынужден использовать обычный способ.
К сожалению, это зависит от драгоценного камня ncurses-0.9.1
, который совместим только с ruby 1.8, и поэтому я также не могу установить nfoiled (поскольку он всегда сначала пытается скомпилировать ncurses-0.9.1):
novavortex:/usr/src# gem install elliottcable-nfoiled Building native extensions. This could take a while... ... form_wrap.c: In function `rbncurs_m_new_form': form_wrap.c:395: error: `struct RArray' has no member named `len' form_wrap.c: In function `rbncurs_c_set_field_type': form_wrap.c:619: error: `struct RArray' has no member named `len' form_wrap.c: In function `rbncurs_c_set_form_fields': form_wrap.c:778: error: `struct RArray' has no member named `len' form_wrap.c: In function `make_arg': form_wrap.c:1126: error: `struct RArray' has no member named `len' make: *** [form_wrap.o] Error 1 Gem files will remain installed in /usr/local/lib/ruby/gems/1.9.1/gems/ncurses-0.9.1 for inspection. Results logged to /usr/local/lib/ruby/gems/1.9.1/gems/ncurses-0.9.1/gem_make.out novavortex:/usr/src#
Мне удалось исправить проблему в ncurses-0.9.1 (заменив RARRAY(x)->len на RARRAY_LEN(x)) и установить его, но nfoiled по-прежнему всегда пытается перекомпилировать его из только что загруженного источника.
Как я могу установить nfoiled без предварительной перекомпиляции ncurses?