2017-01-20 10 views
1

Inkscape жаловался на отсутствие libxml, поэтому я установил lxml для Windows 10. Он снова жаловался на пути изменения -> узлы дрожания. поэтому я перезапустил Inkscape. Он все еще жалуется. Кто-нибудь знает, как это исправить? Заранее спасибоlibxml не распознан в окнах 10 inkscape 0.92

ошибка: Фантастическая LXML обертка для libxml2 требуется inkex.py и поэтому этот extension.Please скачать и установить последнюю версию с http://cheeseshop.python.org/pypi/lxml/, или установить его с помощью менеджера пакетов с помощью команды, как: sudo apt-get install python-lxml

Технические данные: Ошибка загрузки DLL:% 1 не является допустимым приложением Win32.

ответ

3

Я только что столкнулся с этой «ошибкой» в Windows 7 64b и InkScape 0.92.2, и я хотел бы дать небольшой разговорчивый ответ, чтобы пролить свет на фоне этого «фантастического» явления. Обратите внимание, что «Технические детали» сообщения об ошибке кажутся разными с разными людьми = они, вероятно, представляют собой множество различных основных проблем, возникающих из-за различных неправильных конфигураций, возникающих при обращении к системным изображениям разных людей или, возможно, различных сбоев, возникающих в инсталляторе Inkscape пакет для Windows (различные исторические версии).

Прежде всего: обратите внимание, что некоторые «периферийные» вещи в Inkscape реализованы как скрипты или модули Python - например, импорт и экспорт файлов (в некоторых форматах, по крайней мере, мой DXF) и, возможно, встроенная справка , Это означает, что для выполнения функций Inkscape необходим механизм времени исполнения Python.

Python - популярный интерпретируемый язык, и может случиться так, что на момент установки Inkscape у вас есть уже существующая общесистемная установка Python (некоторая версия) на вашем ПК.

Независимо от того, установлен ли у вас Python на вашем ПК уже или нет, установщик Inkscape предлагает установить Python вместе с Inkscape (опция в программе установки). Установщик EXE определенно содержит флажок в этой вене, не уверен в варианте установки MSI (я, кажется, помню, что набор выбираемых параметров не так богат в варианте установки MSI).

И вот идет улов: эта среда исполнения Python, установленная Inkscape, не установлена ​​в системном масштабе. Вместо этого он живет в C: \ Program Files \ Inkscape. Там даже python.exe.

Для сравнения: стандартный общесистемный Python по умолчанию используется в C: \ Python27 \.

Для решения «фантастического» синдрома, некоторые рекомендуют установить переменную среды PYTHONPATH (если необходимо, в рамках всей системы), чтобы указать на папку библиотеки Python Inkscape. В моем случае это не повлияло на Inkscape, проблема с отсутствующим lxml все еще была там. В то же время это нарушило мой общесистемный экземпляр python - угадайте, почему :-)

Я быстро понял, что в моем случае «собственный» Inkscape Python, возможно, отсутствовал в библиотеке lxml. Поэтому я установил PYTHONPATH, запустил CMD с правами администратора, CD'ed в \ Program Files \ Inkscape, загрузил копию get-pip.py и запустил ее в среде Inkscape Python. Это не удалось установить pip (какой IMO является требованием до «pip install lxml»). Я не помню точное сообщение об ошибке, но это просто не получилось.

Далее я выяснил, что другой выход был бы избежать установки Python внутри установщика Inkscape и опираться на общесистемный Python. Раньше у меня был уже существующий Python 2.7.x, но мне удалось удалить его, пока я охотился на «фантастический синдром».Поэтому я также удалил Inkscape, удалил свое собственное определение PYTHONPATH и сделал чистую установку как Python, так и Inkscape. Я сначала загрузил Python 2.7.13 с сайта upstream/official download, кликнул, что я хотел установить PIP вместе с Python, как только Python был удобен в C: \ Python27, я запустил «pip install lxml» (и пару других libs, таких как NumPy, которые мне нужны для RTL-SDR Scanner). После этого я установил Inkscape с помощью установщика EXE, и я убедился, что собственный Python Inkscape НЕ был установлен для установки в установщике Inkscape.

Lo и вот, проблема исчезла. Inkscape вызывает общесистемный интерпретатор Python для запуска сценариев экспорта файлов. Все счастливы.

Помимо PYTHONPATH, обратите внимание на пользовательский путь в переменной окружения PYTHONHOME (может быть оставлен из ваших прошлых экспериментов с Python).

Там есть способ проверить, если установлен LXML:

C:> python 
>>> import lxml 
>>> lxml 
<module 'lxml' from 'C:\Python27\lib\site-packages\lxml\__init__.pyc'> 
>>> quit() 

this topic Смотрите также для отображения версии LXML установлен.

+0

Работали как шарм; Единственная проблема, с которой я столкнулся, заключалась в том, что у меня также был установлен Python35 в моей системе, поэтому мне пришлось изменить путь к Python27, прежде чем называть этот пип и заявить, используя Inkscape – Pontios

1

TL; DR Удалите все версии Inkscape и переустановите 0.92, разрешив проблему для меня.

Verbose: Windows 10, тот же выпуск с версией 0.92. Каждый раз, когда я буду использовать функции Generate From Path, это вызовет ошибку python.

У меня был гораздо более простой случай, когда Python еще не был установлен, но Inkscape 0.91 был. По-видимому, установка новой версии не удаляла старую, поэтому на моей машине были установлены как 0.91, так и 0.92.

Так что я удалил обе версии, сохранил мои настройки пользователя, переустановил 0.92.

После этого все отлично сработало.

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

  • Нет связанных вопросов^_^