Unable to load shared library DPDFRenderNative_x64

Skip Navigation LinksHome  /  Support  /  Forums  /  DynamicPDF Rasterizer for .NET (v2)  /  Re: Unable to load shared library DPDFRenderNative_x64

DynamicPDF Rasterizer for .NET (v2) Forum

Trying to use the Rasterizer with a AWS Lambda Function and getting this error:

"Unable to load shared library 'DPDFRenderNative_x64' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: libDPDFRenderNative_x64: cannot open shared object file: No such file or directory\n   at ceTe.DynamicPDF.Rasterizer.RenderNativeWin64.a(String A_0, String A_1, UInt64& A_2)\n   at ceTe.DynamicPDF.Rasterizer.PdfiumUtilityClass.a(String A_0, String A_1, UInt64& A_2)\n   at ceTe.DynamicPDF.Rasterizer.InputPdf..ctor(String filePath)\n   at ocr_lambda.Function.FunctionHandler(String input, ILambdaContext context)"

Everything works just fine localhost, even on "Mock Lambda Test Tool".

Any guess?
Posted by a ceTe Software moderator
Hello,

Please place the native DLL (DPDFRenderNative_x64.dll or DPDFRenderNative_x86.dll) in the same folder as the .NET DLL (DynamicPDF.Rasterizer.XXXX.dll).

Thanks,
ceTe Software Support Team

 
But the problem still exist。
I reference the package via nuget whith named "ceTe.DynamicPDF.Rasterizer.NET".
My project is running on centos7_x64。
All releated dlls are in the same folder

Debug mode on win10 is OK。 AnyCpu mode


1/4/2020 11:48:20 PM-->System.DllNotFoundException: Unable to load shared library 'DPDFRenderNative_x64' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: libDPDFRenderNative_x64: cannot open shared object file: No such file or directory
   at ceTe.DynamicPDF.Rasterizer.RenderNativeWin64.a(String A_0, String A_1, UInt64& A_2)
   at ceTe.DynamicPDF.Rasterizer.RenderNativeWin64.ai(String A_0, String A_1, UInt64& A_2)
   at ceTe.DynamicPDF.Rasterizer.PdfiumUtilityClass.a(String A_0, String A_1, UInt64& A_2)
   at ceTe.DynamicPDF.Rasterizer.InputPdf..ctor(String filePath)
   at ceTe.DynamicPDF.Rasterizer.PdfRasterizer..ctor(String filePath)
   at DJMS.BusinessLogic.Filetransf.FiletransfLogic.PDFtoImage(IFormFile file, String schema) in E:\DJMS\Web\DJMS.BusinessLogic\Filetransf\FiletransfLogic.cs:line 64
Posted by a ceTe Software moderator
Hello,

You are getting error because DynamicPDF Rasterizer does not currently support the Linux platform. We are working on this feature and plan to include it in a future version of the product.

Thanks,
ceTe Software Support Team
Ok. Please update this thread when this feature is available.
Posted by a ceTe Software moderator
Hello,

Support for the Linux platform has been included in the latest version (v3.08) of DynamicPDF Rasterizer. You can download the latest version from NuGet (product ID : ceTe.DynamicPDF.Rasterizer.NET) or from our website here.

Please note, that the libDPDFRenderNative_XXX.so must be added to your project and must be deployed along with the DynamicPDF.Rasterizer.NETStandard20.dll for Linux builds.

Thanks,
ceTe Software Support Team
Works like a charm! Thank you!

In order to use it with Lambda functions, on a serverless application, what kind of License should be purchased?
Posted by a ceTe Software moderator
Hi,

Great to hear!

A developer license is needed for serverless applications. They are royalty free and are not tied to a server (physical or virtual) in any way.

Thanks,
ceTe Software Support Team
Hello, I have the same problem. I'm working on a .net core project with mac OS.
Posted by a ceTe Software moderator
Hello,

It looks like the libDPDFRenderNative_x64 file is not deployed along with the DynamicPDF.Rasterizer.NETStandard20.dll file. This could be the reason for getting error. Please try placing the respective native DLL file along with the DynamicPDF.Rasterizer.NETStandard20.dll file and see that works. You can refer to the documentation on referencing the assembly and deployment here.

Thanks,
ceTe Software Support Team

All times are US Eastern Standard time. The time now is 12:36 AM.