пассажир встречает ошибку «Библиотека не загружена»: liblzma.5.dylib

Я пытаюсь запустить рельсы с пассажиром.

Я установил оба AWS SDK 1 и 2 gem:

gem 'aws-sdk-v1'
gem 'aws-sdk', '~> 2'

когда я использую AWS sdk для запуска:

s3 = AWS::S3.new

Я встречаю ошибку:

LoadError: dlopen(/Users/XXXX/.rbenv/versions/1.9.3-p551/lib/ruby/gems/1.9.1/gems/nokogiri-1.6.6.2/lib/nokogiri/nokogiri.bundle, 9): 
Library not loaded: /usr/local/lib/liblzma.5.dylib
Referenced from: /Users/XXXX/.rbenv/versions/1.9.3-p551/lib/ruby/gems/1.9.1/gems/nokogiri-1.6.6.2/lib/nokogiri/nokogiri.bundle
Reason: Incompatible library version: nokogiri.bundle requires version 8.0.0 or later, but liblzma.5.dylib provides version 6.0.0

otool -L показывает мне, что версия 8.1.0

$ otool -L /usr/local/lib/liblzma.5.dylib
/usr/local/lib/liblzma.5.dylib:
/usr/local/lib/liblzma.5.dylib (compatibility version 8.0.0, current version 8.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1213.0.0)

Странно, что эта ошибка не появляется, когда я запускаю «rails s». обновить/удалить/переустановить xz с помощью brew не помогает. обновить/удалить/переустановить гем нокогири тоже не помогает.


person twindai    schedule 30.08.2015    source источник
comment
не могли бы вы принять мой ответ?   -  person Yordis Prieto Lazo    schedule 03.12.2016


Ответы (3)


Попробуйте следовать этому https://github.com/PromyLOPh/pianobar/issues/530#issuecomment-125746641

Это исправление: Не удается заставить ffmpeg работать после установки из доморощенного

Использование варева: brew install xz, потому что liblzma сейчас внутри xz

person Yordis Prieto Lazo    schedule 15.11.2015
comment
У меня была эта проблема с драгоценным камнем Nogokiri в моем приложении Rails. Ваша команда также работала для меня, спасибо! - person Topher Fangio; 13.09.2017

Это не проблема в Passenger, это проблема в одном из ваших драгоценных камней. Очевидно, вы установили Nokogiri некоторое время назад, и тогда он был связан с liblzma 5, но некоторое время спустя вы обновили liblzma до несовместимой версии 6. Попробуйте удалить этот гем, а затем установить его снова.

person Hongli    schedule 30.08.2015
comment
как я уже сказал, обновить/удалить/переустановить гем нокогири тоже не помогает. и почему rails работает, а пассажир не работает? они должны ссылаться на одну и ту же папку с драгоценными камнями и файл, верно? и я проверил версию /usr/local/lib/liblzma.5.dylib 8.0.1, если мне нужно удалить драгоценный камень, какой драгоценный камень я должен удалить и как его найти? Я старался изо всех сил в Интернете, чтобы исследовать этот вопрос. не знаю, как отследить выданный файл - person twindai; 30.08.2015
comment
Может быть, из-за различий переменных среды? Попробуйте Passenger Standalone (запустите passenger start) вместо Passenger для Nginx или Passenger для Apache. - person Hongli; 31.08.2015
comment
Я использую apache2, вот мои настройки, они находятся в разработке env. loadModule пассажирский_модуль /usr/local/opt/passenger/libexec/buildout/apache2/mod_passenger.so PassengerUser XXXX PassengerRoot /usr/local/opt/passenger/libexec/lib/phusion_passenger/locations.ini PassengerDefaultRuby /Users/XXXX/.rbenv/ shims/ruby ‹Directory /› Options +Indexes +FollowSymLinks -MultiViews AllowOverride All Порядок разрешить, запретить Разрешить от всех Требовать все предоставленные возможности разработки RailsEnv ‹/Directory› - person twindai; 31.08.2015
comment
Я просто пытаюсь запустить пассажира из папки моего проекта, все работает хорошо! но мне все еще нужно, чтобы он работал с apache2. Итак, вопрос вернулся, почему мои настройки apache2 не работают? пользователь и env одинаковы, чего мне не хватает... - person twindai; 31.08.2015
comment
кажется, мне нужно знать, как проверить статуи пассажиров в обоих состояниях? - person twindai; 31.08.2015
comment
Я проверяю статус с помощью статуса пассажира: aVhb9dkM nginx/1.8.0 Phusion_Passenger/5.0.15 36mXhnSk Apache/2.4.16 (Unix) Phusion_Passenger/5.0.15 Apache не работает, nginx работает из папки проекта - person twindai; 31.08.2015

обновление драгоценных камней сработало для меня

bundle update
person shakirthow    schedule 09.03.2016
comment
Этот ответ был бы намного полезнее для будущих читателей, если бы вы объяснили, почему это могло сработать для вас, когда процесс удаления/переустановки gem, описанный в OP, не работал. - person pjmorse; 09.03.2016