ruby-xslt, Centos и неопределенный символ xsltLibxmlVersion - PullRequest
0 голосов
/ 23 ноября 2011

У меня есть приложение rails, использующее следующую среду:

CentOS выпуск 5.7 (финал) Rails 3.0.9 Rubygems 1.6.2 Ruby 1.9.2 пассажир Apache2

Среда разработки отличается и представляет собой: Ubuntu 10.04, Ruby 1.8.7, который работает как шарм. Я не могу изменить производственную среду.

Я использую ruby-xslt, gem версии 0.9.8, проблема в том, что при доступе к приложению я получаю сообщение об ошибке:

/usr/local/lib/ruby/gems/1.9.1/gems/ruby-xslt-0.9.8/lib/xml/xslt_lib.so: undefined symbol: xsltLibxmlVersion - /usr/local/lib/ruby/gems/1.9.1/gems/ruby-xslt-0.9.8/lib/xml/xslt_lib.so

Единственное решение, которое я могу найти по этому поводу:

http://amitsolanki.com/2010/04/undefined-symbol-xsltlibxmlversion-ruby-xslt-and-centos/

Что не работает для меня.

Я в тупике и хотел бы услышать ваше мнение о том, что делать:

Мои идеи следующие:

1) Не используйте ruby-xslt - однако это единственная библиотека xslt на основе ruby, которую я смог собрать в процессе разработки, поэтому я и использовал ее. (но я открыт для предложений).

2) Взломать lib ruby-xslt, чтобы удалить ссылку на символ, перекомпилировать и установить. (пробовал, но ошибка все еще появляется, поэтому я могу сделать это неправильно, после изменения я снова запускаю "ruby setup.rb" для драгоценного камня, но это всего лишь догадки.)

3) Измените среду Ruby на 1.8.7, как при разработке - не думайте, что это сработает, поскольку проблема заключается в геме ruby-xslt и библиотеке linux libxslt2.so, а не в ruby ​​env. (так что на самом деле не собираюсь этого делать)

4) Добавьте символ в libxslt2.so lib, пересоберите и установите (но не работали с языком C в течение 15 лет)

Есть мысли по этому поводу?

С уважением Пол

1 Ответ

0 голосов
/ 24 ноября 2011

Я решил эту проблему, используя опцию № 1, и мне удалось установить более старую версию xslt-ruby (1.0.1), это также включало установку нескольких библиотек.

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