Quali DLL Qt dovrei copiare per rendere il mio programma autonomo?
-
03-07-2019 - |
Domanda
Sto cercando di creare una directory di distribuzione con la mia applicazione. Ho copiato diverse DLL Qt in quella directory e il programma sembra funzionare, con una sola eccezione: non sembra trovare il plugin SQL per SQLite. La copia di qtsqlite.dll nella directory non consente all'applicazione di aprire o creare file SQLite. Quale deve essere la struttura di directory o quali file aggiuntivi devono essere copiati in modo che il programma possa leggere il database?
Soluzione
puoi usare depend.exe per vedere esattamente quali sono le dipendenze della tua exe e assicurarti che sono tutti inclusi.
Inoltre, leggi questa pagina sui plugin qt. dovrebbero essere in una directory specifica chiamata " plugins " e non nella directory principale con tutte le altre dll.
Altri suggerimenti
Molto probabilmente, lo stesso qtsqlite.dll dipende dalle DLL SQLite originali che probabilmente è necessario copiare anche.
Non dimenticare di includere una copia della licenza LGP ??nella tua distribuzione, nonché i puntatori alle risorse di download originali delle librerie che includi e le loro fonti. Per rispettare la legge :-)
Grazie al link fornito da @shoosh, sono stato in grado di risolvere il problema. Avevo bisogno di creare la sottodirectory sqldrivers nella directory di distribuzione con all'interno la libreria qsqlite.dll. Ma quello era solo il primo passo. Hai suggerimenti e risorse per creare un programma di installazione di Windows completo? Sono principalmente un programmatore Linux, quindi questa zona non mi è nota.