如何安装PDFNet python模块?
我一直在兜圈子,想弄明白如何让我的Django应用程序识别PDFNet的试用版: 我尝试将这些文件添加到我的~/usr/bin目录中,我尝试将它们放到我的virtualenv的bin目录中。两者都不起作用。我已经阅读了我能找到的所有文档。我是一个新的Python开发人员,不知道如何在我的项目中安装和使用这个包 请帮忙 更新我试图创建一个应用程序文件夹,并在应用程序列表中将此组件作为应用程序列出,但当我运行代码启动应用程序时,出现以下错误: 未加载库:@rpath/libPDFNetC.dylib 我已将所有lib文件放入项目中的此文件夹:如何安装PDFNet python模块?,python,django,dependency-management,pdfnet,Python,Django,Dependency Management,Pdfnet,我一直在兜圈子,想弄明白如何让我的Django应用程序识别PDFNet的试用版: 我尝试将这些文件添加到我的~/usr/bin目录中,我尝试将它们放到我的virtualenv的bin目录中。两者都不起作用。我已经阅读了我能找到的所有文档。我是一个新的Python开发人员,不知道如何在我的项目中安装和使用这个包 请帮忙 更新我试图创建一个应用程序文件夹,并在应用程序列表中将此组件作为应用程序列出,但当我运行代码启动应用程序时,出现以下错误: 未加载库:@rpath/libPDFNetC.dyli
- __init.py(空)
- _PDFNetPython.so
- libPDFNetC.dylib
- PDFNetPython.py
- PDFNetRuby.bundle
import site
site.addsitedir("../pdfnetc")
from pdfnetc.PDFNetPython import *
我将lib文件放入名为pdfnetc的应用程序文件夹中。一旦我有了这个,导入语句就不再被pycharm列为unfound
以下是堆栈跟踪:
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
回溯(最近一次呼叫最后一次):
文件“/Applications/PyCharm.app/Contents/helpers/pydev/pydev.py”,第2217行,在
globals=debugger.run(安装程序['file'],无,无)
文件“/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py”,第1643行,运行中
pydev_imports.execfile(文件、全局、局部)#执行脚本
文件“/Users/ntregillus/myapp/manage.py”,第12行,在
从命令行(sys.argv)执行命令
文件“/Users/ntregillus/Envs/myapp/lib/python2.7/site packages/django/core/management/_init__.py”,第385行,从命令行执行
utility.execute()
文件“/Users/ntregillus/Envs/myapp/lib/python2.7/site packages/django/core/management/__init___.py”,执行中第354行
django.setup()
文件“/Users/ntregillus/Envs/myapp/lib/python2.7/site packages/django/_init__.py”,第21行,在安装程序中
应用程序。填充(设置。已安装的应用程序)
文件“/Users/ntregillus/Envs/myapp/lib/python2.7/site packages/django/apps/registry.py”,第108行,填充
app_config.import_models(所有_models)
导入模型中的文件“/Users/ntregillus/Envs/myapp/lib/python2.7/site packages/django/apps/config.py”,第202行
self.models\u module=导入模块(models\u module\u name)
文件“/usr/local/cillar/python/2.7.9/Frameworks/python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py”,第37行,在导入模块中
__导入(名称)
文件“/Users/ntregillus/myapp/statements/models.py”,第12行,在
从statements.Manager导入StatementTemplateManager,StatementManager
文件“/Users/ntregillus/myapp/statements/managers.py”,第8行,在
从statements.utils导入渲染到pdf,StatementContextBuilder
文件“/Users/ntregillus/myapp/statements/utils.py”,第23行,在
从pdfnetc.PDFNetPython导入*
文件“/Users/ntregillus/myapp/pdfnetc/PDFNetPython.py”,第28行,在
_PDFNetPython=swig_import_helper()
swig\u import\u helper中的文件“/Users/ntregillus/myapp/pdfnetetc/PDFNetPython.py”,第24行
_mod=imp.load_模块(“PDFNetPython”,fp,路径名,描述)
导入错误:dlopen(/Users/ntregillus/myapp/PDFNetPython.so,2):未加载库:@rpath/libPDFNetC.dylib
引用自:/Users/ntregillus/myapp/pdfnetc/_PDFNetPython.so
原因:找不到图像
我不了解django,但请仔细查看SDK中的样例py文件。例如,查看PDFNetC/Samples/AddImageTest/PYTHON文件夹。其中有一个.py文件,看看前4行代码,它们指示需要加载的内容
请注意,您需要PDFNetC/Lib文件夹中的所有文件,包括PDFNetC.dll文件
如果这没有帮助,请发布您收到的确切(第一个)错误消息。当我尝试运行shell脚本时,它对我来说很好,顺便说一句,我使用python作为pdfnet的编程语言 尝试使用这些命令来运行pdfn
#!/bin/sh
TEST_NAME=PDFATest
export LD_LIBRARY_PATH=../../../PDFNetC/Lib
python -u $TEST_NAME.py
PDFATest指定python代码,然后导出将获得所需的包,例如位于
../../Lib
文件夹,确保您在库中使用该文件,然后运行代码,您的PDFNet不会有任何问题,顺便说一句,我不回答有关django的问题,但确保这将帮助您解决问题。以下是安装PDFNet模块的步骤:
python-mpip安装PDFNetPython3
添加了我的另一次尝试,错误消息您应该看看Caleb Shay对此问题的回答。我认为这将帮助您解决so无法加载的原因。此外,请仔细检查这些文件的权限。不幸的是,Caleb的问题是关于静态设置的dylib引用,其中作为PDFTron引用在路径中使用特殊的@rpath属性,这意味着只要文件与so文件位于同一目录中,它就应该工作。仍然不明白为什么这里不起作用,但在示例bundlenote中起作用:我能够通过shell脚本运行测试文件。问题在于如何将依赖性集成到我当前的项目中
> chmod a+x fix_rpaths.sh
./fix_rpaths.sh