2015-11-04 3 views
0

Недавно я обновил свою ОС на своем mac до El Capitan и с тех пор сталкивался с проблемами, пытающимися запустить WeasyPrint. Я обновил macports, удалил и переустановил все зависимости от macport. Я также удалил и переустановил WeasyPrint через pip без проблем, но все же он не запускается. У меня также есть экспорт DYLD_FALLBACK_LIBRARY_PATH = "/ opt/local/lib" в мой ~/.profile, который помог решить ошибки импорта и позволил WeasyPrint работать до того, как я установил El Capitan. Когда я типа weasyprint --help в терминале я получаю следующий вывод/ошибка:Неисправность WeasyPrint после установки El Capitan (OSX 10.11)

File "main.py", line 14, in <module> 
    import nextline_webapp.quotes     # pylint: disable=unused-import 
    File "/Users/joshsacks/NextLine/nextline_webapp/quotes.py", line 8, in <module> 
    from flask_weasyprint import HTML, render_pdf 
    File "/Library/Python/2.7/site-packages/flask_weasyprint/__init__.py", line 13, in <module> 
    import weasyprint 
    File "/Library/Python/2.7/site-packages/weasyprint/__init__.py", line 336, in <module> 
    from .css import PARSER, preprocess_stylesheet 
    File "/Library/Python/2.7/site-packages/weasyprint/css/__init__.py", line 30, in <module> 
    from . import computed_values 
    File "/Library/Python/2.7/site-packages/weasyprint/css/computed_values.py", line 18, in <module> 
    from .. import text 
    File "/Library/Python/2.7/site-packages/weasyprint/text.py", line 18, in <module> 
    import cairocffi as cairo 
    File "/Library/Python/2.7/site-packages/cairocffi/__init__.py", line 46, in <module> 
    cairo = dlopen(ffi, 'cairo', 'cairo-2') 
    File "/Library/Python/2.7/site-packages/cairocffi/__init__.py", line 43, in dlopen 
    raise OSError("dlopen() failed to load a library: %s" % '/'.join(names)) 
OSError: dlopen() failed to load a library: cairo/cairo-2 

Это выглядит как проблема пути, но я пробовал все, что я могу думать. Какие-либо предложения?

+0

Проверьте эту ссылку, мне удалось решить эту проблему без отключения SIP http://stackoverflow.com/a/39674220/1957136 – Anurag

ответ

1

Хорошо, поэтому я нашел решение (без изменения каких-либо оригинальных файлов weasyprint или cairocffi). По-видимому, OS X 10.11 вводит SIP, который отключает использование переменных пути DYLD. Чтобы обойти это, я отключил SIP. Инструкции для этого: here. В основном удерживайте команду + r при загрузке. Нажмите «Утилиты» вверху и войдите в терминал. введите csrutil disable, затем перезагрузитесь и это должно исправить.

+1

Проверьте эту ссылку, мне удалось решить эту проблему без отключения SIP http://stackoverflow.com/ а/39674220/1957136 – Anurag

Смежные вопросы