ASP.NET Core e Linux – Unable to load DLL libgdiplus – come risolvere Come risolvere l'errore 'Unable to load DLL libgdiplus - gdiplus.dll not found in Linux error' con ASP.NET Core e Linux

How to Deploy a ASP.NET Core 2 Web Application to Linux CentOS - Tutorial

Oggi, durante la pubblicazione di un progetto ASP.NET Core sul mio server di produzione Linux CentOS, mi sono imbattuto in un problema che non mi era mai capitato prima. Al momento di lanciare la pagina principale, la web app restituiva il seguente errore:

Unable to load DLL libgdiplus – gdiplus.dll not found

Nel leggerlo, ho capito subito che il problema era quasi certamente legato all’impossibilità, da parte di ASP.NET Core, di recuperare la libreria GDI Plus, che nel mio progetto era ampiamente utilizzata. A quanto pare il .NET Core Framework non riusciva a recuperare i metodi presenti nel namespace System.Drawing.GDIPlus. Il motivo, come ho avuto modo di scoprire molto presto, è molto semplice: si tratta di una libreria che non fa parte del .NET Core runtime su Linux.

La soluzione

Fortunatamente, la soluzione del problema è molto semplice: è sufficiente installare il pacchetto lbgdiplus, disponibile per tutte le principali distribuzioni Linux, che fornisce il supporto del namespace System.Drawing.GDIPlus.

Per installarlo, è sufficiente digitare il seguente comando:

Se la vostra distribuzione Linux non utilizza yum, è probabile che dobbiate utilizzare apt-get al suo posto:

Una volta fatto questo, l’applicazione ASP.NET Core dovrebbe funzionare senza problemi, con tutte le funzionalità GDI+ previste.

Conclusione

Per il momento è tutto: mi auguro che questo articolo possa aiutare altri sviluppatori .NET Core a risolvere rapidamente questo problema.

 

About Ryan

IT Project Manager, Web Interface Architect e Lead Developer di numerosi siti e servizi web ad alto traffico in Italia e in Europa. Dal 2010 si occupa anche della progettazione di App e giochi per dispositivi Android, iOS e Mobile Phone per conto di numerose società italiane. Microsoft MVP for Development Technologies dal 2018.

View all posts by Ryan

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.