Quais DLLs do Qt devo copiar para tornar meu programa independente?
-
03-07-2019 - |
Pergunta
Estou tentando criar um diretório de distribuição com meu aplicativo.Copiei várias DLLs do Qt para esse diretório e o programa parece estar funcionando, com uma exceção:parece não encontrar o plugin SQL para SQLite.Copiar qtsqlite.dll para o diretório não permite que meu aplicativo abra ou crie arquivos SQLite.Qual deve ser a estrutura do diretório ou quais arquivos adicionais precisam ser copiados para que o programa possa ler o banco de dados?
Solução
você pode usar depende.exe Para ver exatamente quais são as dependências do seu exe e verifique se estão todas incluídas.
Além disso, leia esta página sobre plugins QT. Eles deveriam estar em um diretório específico chamado "plugins" e não no diretório principal com todas as outras DLLs.
Outras dicas
Muito provavelmente, o próprio qtsqlite.dll depende das DLLs SQLite originais que você provavelmente também precisará copiar.
Não se esqueça de incluir uma cópia da licença LGP em sua distribuição, bem como indicações para os recursos de download originais das bibliotecas que você incluir e suas fontes.Para ficar com a lei :-)
Graças ao link @shoosh fornecido, pude resolver o problema. Eu precisava criar um subdiretório SQLDRIVERS no diretor de distribuição com a biblioteca qsqlite.dll dentro. Mas isso foi apenas um passo um. Você tem alguma dica e recursos para criar um instalador do Windows completo? Eu sou principalmente um programador Linux, então essa área é desconhecida para mim.