2015-05-01 3 views
0

Я носился кругами, пытаясь выяснить, как получить мое приложение Django признать версию PDFNet:Как установить модуль PDFNet python?

https://pypi.python.org/pypi/PDFTron-PDFNet-SDK-for-Python/5.7

Я попытался добавить файлы в моем ~/USR каталог/бен, я попробовал сбросить их в каталог bin моего виртуального. Ничего не сработало. Я прочитал всю документацию, которую я могу найти. Я слишком новичок в разработчике Python, чтобы посмотреть этот пакет и узнать, как его установить и использовать в моем проекте.

Пожалуйста, помогите!

обновление Я попытался создать папку приложения, и список этот компонент в качестве приложения в списке приложений, но когда я запускаю код для запуска приложения, я получаю следующее сообщение об ошибке:

Library not loaded: @rpath/libPDFNetC.dylib

я поместил все Lib файлы в эту папку в моем проекте:

  • __init.py (пусто)
  • _PDFNetPython.so
  • libPDFNetC.dylib
  • PDFNetPython.py
  • PDFNetRuby.bundle

Я использовал следующий код импорта в верхней части файла ру я пытался использовать этот компонент на:

import site 
site.addsitedir("../pdfnetc") 
from pdfnetc.PDFNetPython import * 

Я поместил файлы lib в папку приложения с именем pdfnetc. как только я это сделал, заявления импорта больше не были указаны как необоснованные pycharm.

здесь трассировки стека:

Traceback (most recent call last): 
    File "/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py", line 2217, in <module> 
    globals = debugger.run(setup['file'], None, None) 
    File "/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py", line 1643, in run 
    pydev_imports.execfile(file, globals, locals) # execute the script 
    File "/Users/ntregillus/myapp/manage.py", line 12, in <module> 
    execute_from_command_line(sys.argv) 
    File "/Users/ntregillus/Envs/myapp/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line 
    utility.execute() 
    File "/Users/ntregillus/Envs/myapp/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute 
    django.setup() 
    File "/Users/ntregillus/Envs/myapp/lib/python2.7/site-packages/django/__init__.py", line 21, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/Users/ntregillus/Envs/myapp/lib/python2.7/site-packages/django/apps/registry.py", line 108, in populate 
    app_config.import_models(all_models) 
    File "/Users/ntregillus/Envs/myapp/lib/python2.7/site-packages/django/apps/config.py", line 202, in import_models 
    self.models_module = import_module(models_module_name) 
    File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/Users/ntregillus/myapp/statements/models.py", line 12, in <module> 
    from statements.managers import StatementTemplateManager, StatementManager 
    File "/Users/ntregillus/myapp/statements/managers.py", line 8, in <module> 
    from statements.utils import render_to_pdf, StatementContextBuilder 
    File "/Users/ntregillus/myapp/statements/utils.py", line 23, in <module> 
    from pdfnetc.PDFNetPython import * 
    File "/Users/ntregillus/myapp/pdfnetc/PDFNetPython.py", line 28, in <module> 
    _PDFNetPython = swig_import_helper() 
    File "/Users/ntregillus/myapp/pdfnetc/PDFNetPython.py", line 24, in swig_import_helper 
    _mod = imp.load_module('_PDFNetPython', fp, pathname, description) 
ImportError: dlopen(/Users/ntregillus/myapp/pdfnetc/_PDFNetPython.so, 2): Library not loaded: @rpath/libPDFNetC.dylib 
    Referenced from: /Users/ntregillus/myapp/pdfnetc/_PDFNetPython.so 
    Reason: image not found 
+0

примечание: я могу запускать тестовые файлы с помощью сценариев оболочки. просто выясняется, как интегрировать зависимость в мой текущий проект, проблема –

ответ

0

Я не знающие Джанго, но внимательно посмотреть на образец ру файлов, которые находятся в SDK. Например, посмотрите папку PDFNetC/Samples/AddImageTest/PYTHON. В файле .py и просмотрите первые 4 строки кода, они указывают, что нужно загружать.

Обратите внимание, что вам нужны все файлы, которые находятся в папке PDFNetC/Lib, включая файл PDFNetC.dll.

Если это не поможет, отправьте точное (первое) сообщение об ошибке, которое вы получите.

+0

добавила еще одну попытку, которую я сделал, и сообщение об ошибке –

+0

. Вы должны взглянуть на ответ Калеба Шая на этот вопрос. http://stackoverflow.com/questions/6383310/python-mysqldb-library-not-loaded-libmysqlclient-18-dylib Я думаю, что это поможет вам решить, почему так не удается загрузить. Кроме того, дважды проверьте разрешения на эти файлы. – Ryan

+0

К сожалению, вопрос Калеба касался статически заданной ссылки dylib, где в качестве ссылки PDFTron используется специальный атрибут @rpath в пути, то есть он должен работать до тех пор, пока файл находится в том же каталоге, что и файл. Все еще потеряно, почему это не работает здесь, но работает в примере –