2017-05-28 3 views
0

Ich versuche, Qt-Bibliotheken für ein CMake-Projekt mit Visual Studio zu verwenden. Ich konnte alle Qt5-Komponenten (wie Qt5Sql und Qt5Core) mit CMake finden. Ich hatte auch Zugriff auf die Qt-Objekte, als ich die Quelldateien für den Test gemacht habe.CMake-Projekt mit Qt-Bibliotheken in Visual Studio 2017: Qt-DLL kann nicht gefunden werden, wenn die exe ausgeführt wird

Allerdings, nachdem ich den Build fertig und versuche, die resultierende ausführbare Datei auszuführen, beschwert es sich, dass "Qt5Sql.dll von Ihrem Computer fehlt". Ich habe dann die DLL in den Build-Ordner kopiert, in dem sich die ausführbare Datei befindet, aber das hat das Problem nicht gelöst. Obwohl ich denke, dass Qt5Core auch im Test verwendet wird, beklage es sich nicht über Qt5Core und habe nicht gesagt, dass es fehlt.

Hier sind meine Fragen:

  • Warum die Qt-Komponenten für Quelldateien verfügbar sind, aber für die ausführbare Datei nicht verfügbar? Wo sollte ich die DLL-Dateien speichern, damit die EXE-Dateien sie finden können?
  • Ich habe eine ganze Reihe von Dokumentationen über statische vs dynamische vs gemeinsame Bibliotheken gelesen, bin aber immer noch verwirrt, wie sie in dieser Art von Situation angewendet werden. Wie kann ich die Qt-Komponenten in die Bereitstellung einbeziehen, damit die Exe die dlls nicht finden muss? Dies ist eine sehr grundlegende Frage, aber jede Hilfe wird geschätzt!
  • Warum versucht die EXE, die "Qt5Sql.dll" aber nicht "QtCore.dll" zu finden? Ich glaube beide werden in den Testdateien verwendet.
  • Warum sucht es nach DLL-Dateien, wenn ich bereits die lib-Dateien in der CMakeLists.txt verlinkt habe.

Werkzeuge und System verwendet: CMake 3.8.1, Qt 5.9 Beta, Visual Studio 2017, Windows 10

Unten finden Sie die CMakeLists.txt ich für den Test verwendet:

cmake_minimum_required(VERSION 3.6) 
project(testQt) 

set(CMAKE_PREFIX_PATH D:\\Qt\\5.9\\msvc2015_64\\lib\\cmake) 
set (CMAKE_AUTOMOC ON) 
set (CMAKE_INCLUDE_CURRENT_DIR ON) 

find_package(Qt5 REQUIRED COMPONENTS 
    Core 
    Sql 
    Widgets 
    Gui 
    ) 

add_executable(test test.cpp) 
target_link_libraries(test 
    Qt5::Core 
    Qt5::Sql 
    ) 

Below ist die test.cpp. Ich habe die test.cpp in Qt Creater versucht und es funktioniert dort. Es stellt einfach eine Verbindung zu einer lokalen Datenbank her.

#include <QtDebug> 
#include <QString> 
#include <QtSql> 
#include <QSqlDatabase> 
#include <QtSql/QSqlDatabase> 
#include <QtSql/QSqlError> 
#include <QtSql/QSqlDriver> 


int main() 
{ 

    QString servername = "DESKTOP-NAME\\SQLEXPRESS"; 
    QString dbname = "sql_db_test"; 
    QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); 
    db.setConnectOptions(); 
    QString dsn = QString("Driver={SQL Server};Server=%1;DATABASE=%2;Trusted_Connection=Yes;").arg(servername).arg(dbname); 
    db.setDatabaseName(dsn); 
    qDebug() << db.connectionName(); 

    return 0; 
} 

[EDIT] Im Folgenden finden Sie die Protokolldatei von Dependency Walker

***************************| Module Dependency Tree |*************************** 
*                    * 
* Legend: F Forwarded Module ? Missing Module  6 64-bit Module  * 
*   D Delay Load Module ! Invalid Module        * 
*   * Dynamic Module  E Import/Export Mismatch or Load Failure  * 
*        ^Duplicate Module       * 
*                    * 
******************************************************************************** 

[ 6] test.EXE 
    [ ? ] QT5SQLD.DLL 
    [ ? ] QT5CORED.DLL 
    [ 6] MSVCP140D.DLL 
      [ ^6] VCRUNTIME140D.DLL 
      [ ^6] UCRTBASED.DLL 
      [ ^6] KERNEL32.DLL 
       [F^6] NTDLL.DLL 
      [D 6] CONCRT140D.DLL 
       [ ^6] MSVCP140D.DLL 
       [ ^6] VCRUNTIME140D.DLL 
       [ ^6] UCRTBASED.DLL 
       [ ^6] KERNEL32.DLL 
        [F^6] NTDLL.DLL 
    [ 6] VCRUNTIME140D.DLL 
      [ ^6] UCRTBASED.DLL 
      [ ^6] KERNEL32.DLL 
       [F^6] NTDLL.DLL 
    [ 6] UCRTBASED.DLL 
      [ 6] API-MS-WIN-CORE-STRING-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-ERRORHANDLING-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-FILE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-TIMEZONE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-HANDLE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-NAMEDPIPE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-FILE-L2-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-HEAP-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
        [F^6] NTDLL.DLL 
      [ 6] API-MS-WIN-CORE-SYSINFO-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-LIBRARYLOADER-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-SYNCH-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
        [F^6] NTDLL.DLL 
      [ 6] API-MS-WIN-CORE-PROCESSTHREADS-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
        [F^6] NTDLL.DLL 
      [ 6] API-MS-WIN-CORE-PROCESSENVIRONMENT-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-DATETIME-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-LOCALIZATION-L1-2-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-SYNCH-L1-2-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-CONSOLE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-DEBUG-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-RTLSUPPORT-L1-1-0.DLL 
       [F^6] NTDLL.DLL 
      [ 6] API-MS-WIN-CORE-PROCESSTHREADS-L1-1-1.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-FILE-L1-2-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-PROFILE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-MEMORY-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ 6] API-MS-WIN-CORE-UTIL-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
        [F^6] NTDLL.DLL 
      [ 6] API-MS-WIN-CORE-INTERLOCKED-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
        [F^6] NTDLL.DLL 
    [ 6] KERNEL32.DLL 
      [ ? ] API-MS-WIN-CORE-RTLSUPPORT-L1-2-0.DLL 
      [ 6] NTDLL.DLL 
      [ 6] KERNELBASE.DLL 
       [ ^6] NTDLL.DLL 
       [ ^6] API-MS-WIN-EVENTING-PROVIDER-L1-1-0.DLL 
        [F^6] ADVAPI32.DLL 
         [F^6] NTDLL.DLL 
       [ ? ] API-MS-WIN-CORE-APIQUERY-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-ADVAPI32-REGISTRY-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-APPCOMPAT-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-NTUSER-STRING-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-FILE-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-DATETIME-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-QUIRKS-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-QUIRKS-L1-1-1.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-SIDEBYSIDE-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-MRMCORER-RESMANAGER-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-WINDOWSERRORREPORTING-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-WINDOWSERRORREPORTING-L1-1-1.DLL 
       [D? ] EXT-MS-WIN-GPAPI-GROUPPOLICY-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-NTDSAPI-ACTIVEDIRECTORYCLIENT-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-NTDSAPI-ACTIVEDIRECTORYCLIENT-L1-1-1.DLL 
       [D? ] EXT-MS-WIN-SHELL32-SHELLCOM-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-ADVAPI32-NTMARTA-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-SECURITY-CAPAUTHZ-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-FECLIENT-ENCRYPTEDFILE-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-SECURITY-EFSWRT-L1-1-1.DLL 
       [D? ] EXT-MS-WIN-APPMODEL-DAXCORE-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-ERRORHANDLING-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNEL32-REGISTRY-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-KERNELBASE-PROCESSTHREAD-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-ADVAPI32-NPUSERNAME-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-APPXDEPLOYMENTCLIENT-APPXDEPLOY-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-APPXDEPLOYMENTCLIENT-APPXDEPLOYONECORE-L1-1-0.DLL 
       [D? ] EXT-MS-WIN-COM-PSMREGISTER-L1-2-1.DLL 
      [ ? ] API-MS-WIN-CORE-PROCESSTHREADS-L1-1-3.DLL 
      [ ? ] API-MS-WIN-CORE-PROCESSTHREADS-L1-1-2.DLL 
      [ ? ] API-MS-WIN-CORE-REGISTRY-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-HEAP-L1-2-0.DLL 
      [ ? ] API-MS-WIN-CORE-HEAP-L2-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-MEMORY-L1-1-2.DLL 
      [ ? ] API-MS-WIN-CORE-ENCLAVE-L1-1-0.DLL 
      [ ^6] API-MS-WIN-CORE-HANDLE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ E6] API-MS-WIN-CORE-SYNCH-L1-2-0.DLL 
       [F^6] KERNEL32.DLL 
        [FE6] API-MS-WIN-CORE-SYNCH-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-SYNCH-L1-2-1.DLL 
      [ ? ] API-MS-WIN-CORE-FILE-L1-2-1.DLL 
      [ ? ] API-MS-WIN-CORE-FILE-L1-2-2.DLL 
      [ ? ] API-MS-WIN-CORE-DELAYLOAD-L1-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-IO-L1-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-JOB-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-THREADPOOL-LEGACY-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-THREADPOOL-PRIVATE-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-LIBRARYLOADER-L1-2-2.DLL 
      [ ? ] API-MS-WIN-CORE-LIBRARYLOADER-L1-2-0.DLL 
      [ ? ] API-MS-WIN-CORE-LIBRARYLOADER-L2-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-NAMEDPIPE-L1-2-2.DLL 
      [ ? ] API-MS-WIN-CORE-NAMEDPIPE-L1-2-0.DLL 
      [ ? ] API-MS-WIN-CORE-DATETIME-L1-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-DATETIME-L1-1-2.DLL 
      [ ? ] API-MS-WIN-CORE-SYSINFO-L1-2-1.DLL 
      [ ? ] API-MS-WIN-CORE-SYSINFO-L1-2-3.DLL 
      [ ^6] API-MS-WIN-CORE-TIMEZONE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ ? ] API-MS-WIN-CORE-LOCALIZATION-L1-2-1.DLL 
      [ ? ] API-MS-WIN-CORE-PROCESSSNAPSHOT-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-PROCESSENVIRONMENT-L1-2-0.DLL 
      [ ^6] API-MS-WIN-CORE-STRING-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ ? ] API-MS-WIN-CORE-DEBUG-L1-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-ERRORHANDLING-L1-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-ERRORHANDLING-L1-1-3.DLL 
      [ ? ] API-MS-WIN-CORE-FIBERS-L1-1-1.DLL 
      [ ^6] API-MS-WIN-CORE-PROFILE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ ? ] API-MS-WIN-SECURITY-BASE-L1-2-0.DLL 
      [ ? ] API-MS-WIN-SECURITY-APPCONTAINER-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-COMM-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-REALTIME-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-WOW64-L1-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-WOW64-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-PROCESSTOPOLOGY-L1-2-0.DLL 
      [ ? ] API-MS-WIN-CORE-NAMESPACE-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-FILE-L2-1-2.DLL 
      [ ? ] API-MS-WIN-CORE-FILE-L2-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-XSTATE-L2-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-LOCALIZATION-L2-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-NORMALIZATION-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-FIBERS-L2-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-LOCALIZATION-PRIVATE-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-SIDEBYSIDE-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-APPCOMPAT-L1-1-1.DLL 
      [ ? ] API-MS-WIN-CORE-WINDOWSERRORREPORTING-L1-1-0.DLL 
      [ ^6] API-MS-WIN-CORE-CONSOLE-L1-1-0.DLL 
       [F^6] KERNEL32.DLL 
      [ ? ] API-MS-WIN-CORE-CONSOLE-L2-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-PSAPI-L1-1-0.DLL 
      [ ? ] API-MS-WIN-CORE-PSAPI-ANSI-L1-1-0.DLL 
      [ 6] API-MS-WIN-EVENTING-PROVIDER-L1-1-0.DLL 
       [F 6] ADVAPI32.DLL 
        [ 6] MSVCRT.DLL 
         [ ^6] NTDLL.DLL 
         [ ^6] API-MS-WIN-CORE-CONSOLE-L1-1-0.DLL 
           [F^6] KERNEL32.DLL 
         [ ? ] API-MS-WIN-CORE-DATETIME-L1-1-1.DLL 
         [ ? ] API-MS-WIN-CORE-DEBUG-L1-1-1.DLL 
         [ ? ] API-MS-WIN-CORE-ERRORHANDLING-L1-1-1.DLL 
         [ ? ] API-MS-WIN-CORE-FIBERS-L1-1-1.DLL 
         [ ? ] API-MS-WIN-CORE-FILE-L1-2-1.DLL 
         [ ^6] API-MS-WIN-CORE-HANDLE-L1-1-0.DLL 
           [F^6] KERNEL32.DLL 
         [ ? ] API-MS-WIN-CORE-HEAP-L1-2-0.DLL 
         [ ? ] API-MS-WIN-CORE-LOCALIZATION-L1-2-1.DLL 
         [ ? ] API-MS-WIN-CORE-LIBRARYLOADER-L1-2-0.DLL 
         [ ? ] API-MS-WIN-CORE-MEMORY-L1-1-2.DLL 
         [ ? ] API-MS-WIN-CORE-NAMEDPIPE-L1-2-0.DLL 
         [ ? ] API-MS-WIN-CORE-PROCESSENVIRONMENT-L1-2-0.DLL 
         [ ? ] API-MS-WIN-CORE-PROCESSTHREADS-L1-1-2.DLL 
         [ ^6] API-MS-WIN-CORE-PROFILE-L1-1-0.DLL 
           [F^6] KERNEL32.DLL 
         [ ^6] API-MS-WIN-CORE-STRING-L1-1-0.DLL 
           [F^6] KERNEL32.DLL 
         [ E6] API-MS-WIN-CORE-SYNCH-L1-2-0.DLL 
           [F^6] KERNEL32.DLL 
         [ ? ] API-MS-WIN-CORE-SYSINFO-L1-2-1.DLL 
         [ ^6] API-MS-WIN-CORE-UTIL-L1-1-0.DLL 
           [F^6] KERNEL32.DLL 
            [F^6] NTDLL.DLL 
         [ ^6] KERNELBASE.DLL 
         [F^6] NTDLL.DLL 
        [ ^6] NTDLL.DLL 
        [ E6] API-MS-WIN-EVENTING-CONTROLLER-L1-1-0.DLL 
         [F^6] ADVAPI32.DLL 
        [ ? ] API-MS-WIN-EVENTING-CONSUMER-L1-1-0.DLL 
        [ ^6] KERNELBASE.DLL 
        [ 6] SECHOST.DLL 
         [ ^6] NTDLL.DLL 
         [ ? ] API-MS-WIN-CORE-LIBRARYLOADER-L1-2-0.DLL 
         [ ^6] RPCRT4.DLL 
         [ ? ] API-MS-WIN-CORE-CRT-L1-1-0.DLL 
         [ ? ] API-MS-WIN-CORE-THREADPOOL-L1-2-0.DLL 
         [ ? ] API-MS-WIN-CORE-FILE-L1-2-1.DLL 
         [ ? ] API-MS-WIN-CORE-IO-L1-1-1.DLL 
         [ ? ] API-MS-WIN-CORE-DEBUG-L1-1-1.DLL 
         [ ? ] API-MS-WIN-CORE-ERRORHANDLING-L1-1-1.DLL 
         [ ^6] API-MS-WIN-CORE-HANDLE-L1-1-0.DLL 
           [F^6] KERNEL32.DLL 
         [ ? ] API-MS-WIN-CORE-HEAP-L1-2-0.DLL 
         [ ? ] API-MS-WIN-CORE-REGISTRY-L1-1-0.DLL 
         [ ? ] API-MS-WIN-CORE-HEAP-OBSOLETE-L1-1-0.DLL 
         [ ? ] API-MS-WIN-CORE-MEMORY-L1-1-2.DLL 
         [ ? ] API-MS-WIN-CORE-PROCESSTHREADS-L1-1-2.DLL 
         [ ^6] API-MS-WIN-CORE-STRING-L1-1-0.DLL 
           [F^6] KERNEL32.DLL 
         [ E6] API-MS-WIN-CORE-SYNCH-L1-2-0.DLL 
           [F^6] KERNEL32.DLL 
         [ ? ] API-MS-WIN-CORE-SYSINFO-L1-2-1.DLL 
         [ ? ] API-MS-WIN-CORE-WOW64-L1-1-0.DLL 
         [ ? ] API-MS-WIN-SECURITY-BASE-L1-2-0.DLL 
         [ ? ] API-MS-WIN-CORE-APIQUERY-L1-1-0.DLL 
         [ ? ] API-MS-WIN-CORE-DELAYLOAD-L1-1-1.DLL 
         [D? ] EXT-MS-WIN-EVENTING-RUNDOWN-L1-1-0.DLL 
         [D? ] EXT-MS-WIN-SECURITY-CHAMBERS-L1-1-0.DLL 
         [D^6] CRYPTBASE.DLL 
+0

Öffnen Sie mit [DependencyWalker] (http: //www.dependencywalker.com /) Ihre ausführbare Datei, es wird Ihnen sagen, ob es eine fehlende Abhängigkeit (d. h. eine DLL nicht gefunden). Wenn eine DLL nicht gefunden wird, könnte dies bedeuten, dass sie oder eine ihrer Abhängigkeiten nicht gefunden werden konnte. Mit Hilfe von DepWalker wissen Sie, welche DLL fehlt und Sie müssen kopieren. –

+0

@LucaCappa Ich downloade den Dendepency Walker 2.2 für x64, und versuchte es auf der Exe und einige frühere Test-Exe, die ich erstellt habe. Es stellte sich heraus, dass es viele Fehler gibt, sogar für diejenigen, von denen ich dachte, dass sie funktionieren würden! Ist die Version 2.2 für Windows 10 richtig? Vielen Dank! – DavidY

+0

Version 2.2 ist in Ordnung. Können Sie den Bericht als Textdatei bereitstellen? –

Antwort

1

Wenn Qt als DLL, die Dateien in D gebaut: \ 5.9 Qt \ \ msvc2015_64 \ lib \ Cmake nur den Import finden Bibliotheken. Zusammen mit den Include-Dateien sind diese für den Compiler und den Link-Prozess ausreichend, um offene Abhängigkeiten aufzulösen. Sie müssen die binären Verzeichnisse von Qt D: \ Qt \ 5.9 \ msvc2015_64 \ bin und D: \ Qt \ 5.9 \ msvc2015_64 \ plugins \ Plattformen der Umgebung hinzufügen, indem Sie sie an die PATH-Variable anhängen.

PATH = D: \ Qt \ 5.9 \ msvc2015_64 \ bin; D: \ Qt \ 5.9 \ msvc2015_64 \ Plugins \ Plattformen;% PATH%

für Visual Studio Testen in Sie diese Einstellung unter Konfiguration könnte hinzufügen Eigenschaften Debugging-Abschnitt in der Umgebung. Gehen Sie zum Projektmappen-Explorer, klicken Sie mit der rechten Maustaste auf das Projekt ("test" in Ihrem Beispiel) und wählen Sie Eigenschaften, um die Konfigurationseigenschaften anzuzeigen. Siehe Working with Project Properties

Wenn Sie später ein Installationsprogramm für Ihr Projekt mit CMake/CPack erstellen, ist das Qt Windows-Bereitstellungstool nützlich, um die für die Verteilung benötigten Qt-DLLs zu identifizieren. Siehe Qt Deployment

+0

Das funktioniert wie ein Zauber! So lib-Dateien sind in CMakeLists enthalten, aber Pfade für DLL-Dateien sind in PATH wie eine Software von Drittanbietern enthalten. Danke. – DavidY

Verwandte Themen