Fehler beim Build erstellen QT6



  • Das Visual Studio eine IDE ist, ist mir bewusst.
    Allerdings lässt sich mit dem QT Creator besser die GUI bauen.

    Aber selbst wenn ich VS nutze, muss ich QT dennoch fürs statische Linken selbst bauen.

    Nun habe ich aber ein neues Problem:

    configure habe ich durchlaufen lassen mit folgendem Befehl:

    configure -release -opensource -confirm-license -prefix C:\QT\6.1.3\Build 
    

    Die wurde auch am Ende abgeschlossen mit der Meldung:

    Qt is now configured for building. Just run 'cmake --build . --parallel'
    
    Once everything is built, you must run 'cmake --install .'
    Qt will be installed into 'C:/Qt/6.1.3/Build'
    
    To configure and build other Qt modules, you can use the following convenience script:
            C:/Qt/6.1.3/Build/bin/qt-configure-module.bat
    
    If reconfiguration fails for some reason, try to remove 'CMakeCache.txt' from the build directory
    
    -- Configuring done
    -- Generating done
    -- Build files have been written to: C:/Qt/6.1.3/Src
    

    Nun bekomme ich allerdings beim Aufrufen von

    make -j8
    

    die Meldung

    make: *** No targets specified and no makefile found.  Stop.
    

    und es ist auch keine make Datei in dem Verzeichnis zu finden.

    Durch den configure Befehl müsste doch aber die make Datei erstellt wurdens ein. Was könnte ich noch probieren oder wo könnte ich noch nachschauen?



  • Kannst du nicht richtig lesen?

    Qt is now configured for building. Just run 'cmake --build . --parallel'
    

    make und cmakesind zwei verschiedene Programme.



  • @Th69 sagte in Fehler beim Build erstellen QT6:

    cmake --build . --parallel

    Das hatte ich zwar gelesen, doch da ich der Anleitung aus dem Video folgen wollte habe ich make genommen.

    Habe jetzt "cmake --build . --parallel" augeführt, aber leider bricht es gleich zu Anfang mit der Fehlermeldung:
    ~~
    compilation terminated.
    ninja: build stopped: subcommand failed.
    ~~

    ab.



  • Anscheinend ist "ninja" umbekannt. Ist der Pfad dazu in PATH eingetragen (set path)?

    Edit: s.a. Qt for Windows - Building from Source "Step 3: Set the Environment Variables".



  • Habe gerade geschaut mit "ninja --version" und mir wird 1.10.2 angezeigt.
    Außerdem ist "C:\Mingw\bin" in den PATH eingetragen und darin befindet sich auch ninja.exe

    Hier mal ein größerer Auszug der Meldung:

    compilation terminated.
    [6/7275] Building CXX object qtbase/src/3rdparty/harfbuzz-ng/CMakeFiles/BundledHarfbuzz.dir/hb-dummy.cc.obj
    FAILED: qtbase/src/3rdparty/harfbuzz-ng/CMakeFiles/BundledHarfbuzz.dir/hb-dummy.cc.obj
    C:\MinGW\bin\c++.exe -DHAVE_ATEXIT -DHAVE_CONFIG_H -DHAVE_OT -DHB_EXTERN="" -DHB_NDEBUG -DHB_NO_UNICODE_FUNCS -DHB_NO_WIN1256 -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_VERSION_TAGGING -D_USE_MATH_DEFINES -IC:/Qt/6.1.3/Src/qtbase/src/3rdparty/harfbuzz-ng/include/harfbuzz -IC:/Qt/6.1.3/Src/qtbase/src/corelib/Core_autogen/include -IC:/Qt/6.1.3/Src/qtbase/include -IC:/Qt/6.1.3/Src/qtbase/include/QtCore -IC:/Qt/6.1.3/Src/qtbase/src/corelib -IC:/Qt/6.1.3/Src/qtbase/src/corelib/global -IC:/Qt/6.1.3/Src/qtbase/src/corelib/kernel -IC:/Qt/6.1.3/Src/qtbase/src/corelib/../3rdparty/tinycbor/src -IC:/Qt/6.1.3/Src/qtbase/include/QtCore/6.1.3 -IC:/Qt/6.1.3/Src/qtbase/include/QtCore/6.1.3/QtCore -IC:/Qt/6.1.3/Src/qtbase/src/corelib/../3rdparty -IC:/Qt/6.1.3/Src/qtbase/src/corelib/../3rdparty/double-conversion/include -IC:/Qt/6.1.3/Src/qtbase/src/corelib/.rcc -IC:/Qt/6.1.3/Src/qtbase/mkspecs/win32-g++ -IC:/Strawberry/c/include -IC:/Qt/6.1.3/Src/qtbase/src/3rdparty/pcre2/src -IC:/Qt/6.1.3/Src/qtbase/src/3rdparty/harfbuzz-ng -DNDEBUG -O2 -fvisibility=hidden -fno-keep-inline-dllexport -w -fno-exceptions -std=c++1z -MD -MT qtbase/src/3rdparty/harfbuzz-ng/CMakeFiles/BundledHarfbuzz.dir/hb-dummy.cc.obj -MF qtbase\src\3rdparty\harfbuzz-ng\CMakeFiles\BundledHarfbuzz.dir\hb-dummy.cc.obj.d -o qtbase/src/3rdparty/harfbuzz-ng/CMakeFiles/BundledHarfbuzz.dir/hb-dummy.cc.obj -c C:/Qt/6.1.3/Src/qtbase/src/3rdparty/harfbuzz-ng/hb-dummy.cc
    In file included from C:/Qt/6.1.3/Src/qtbase/src/3rdparty/harfbuzz-ng/src/hb-common.cc:29:0,
                     from C:/Qt/6.1.3/Src/qtbase/src/3rdparty/harfbuzz-ng/hb-dummy.cc:7:
    C:/Qt/6.1.3/Src/qtbase/src/3rdparty/harfbuzz-ng/src/hb.hh:201:26: fatal error: winapifamily.h: No such file or directory
     #include <winapifamily.h>
                              ^
    compilation terminated.
    ninja: build stopped: subcommand failed.
    
    C:\Qt\6.1.3\Src>ninja --version
    1.10.2
    
    


  • OK, der Fehler ist doch eindeutig beim Bauen der HarfBuzz-NG lib.
    Benötigst du denn HarfBuzz? Ansonsten entferne es aus der Module-Liste von Qt: HarfBuzz-NG, version 2.9.0



  • Danke, habe es entfernt und damit startete es wenigstens.
    Nun habe ich allerdings erneut eine Fehlermeldung:

    Qt is now configured for building. Just run 'cmake --build . --parallel'
    
    Once everything is built, you must run 'cmake --install .'
    Qt will be installed into 'C:/Qt/6.1.3/Build'
    
    To configure and build other Qt modules, you can use the following convenience script:
            C:/Qt/6.1.3/Build/bin/qt-configure-module.bat
    
    If reconfiguration fails for some reason, try to remove 'CMakeCache.txt' from the build directory
    
    -- Configuring incomplete, errors occurred!
    See also "C:/Qt/6.1.3/Src/CMakeFiles/CMakeOutput.log".
    See also "C:/Qt/6.1.3/Src/CMakeFiles/CMakeError.log".
    FAILED: build.ninja
    C:\CMake\bin\cmake.exe --regenerate-during-build -SC:\Qt\6.1.3\Src -BC:\Qt\6.1.3\Src
    ninja: error: rebuilding 'build.ninja': subcommand failed
    

    So langsam werde ich wahnsinnig. Warum bekomme ich es nicht hin? Ist es denn wirklich so schweirig?
    Kann es sein, dass ich irgendwelches Vorwissen dafür benötige?



  • Anscheinend hast du schon zu oft bauen lassen - da scheinen noch einige Artefakte übrig zu sein.
    Lösche, wie angegeben, CMakeCache.txt (oder aber gleich das gesamte Build-Verzeichnis).

    Schau auch in die angegebenen Log-Dateien.



  • Habe jetzt das gesamte Src Verzeichniss (das meintest du doch, oder?) nochmals gelöscht und erneut alle Schritte ausgeführt.
    Allerdings bleibt es bei dem Ergebnis, bekomme wieder die gleiche Fehlermeldung.



  • @tomatriga sagte in Fehler beim Build erstellen QT6:

    -- Configuring incomplete, errors occurred!
    See also "C:/Qt/6.1.3/Src/CMakeFiles/CMakeOutput.log".
    See also "C:/Qt/6.1.3/Src/CMakeFiles/CMakeError.log".
    

    Naja, hast du da mal reingeschaut?



  • Ja sicherlich habe ich da schon hereingeschaut, allerdings steht da am Ende auch wieder der gleiche Fehler:

    C:/Qt/6.1.3/Src/CMakeFiles/CMakeTmp/src.cxx:3:29: fatal error: uaplatformlayer.h: No such file or directory
    
     #include <uaplatformlayer.h>
    
                                 ^
    
    compilation terminated.
    
    ninja: build stopped: subcommand failed.
    
    
    
    Source file was:
     #include <stdio.h>
    
    #include <uaplatformlayer.h>
    #include <uastring.h>
    #include <uasession.h>
    
    using namespace UaClientSdk;
    
    int main(int /*argc*/, char ** /*argv*/)
    {
    
        UaPlatformLayer::init();
        UaSession *session = new UaSession;
    
        UaPlatformLayer::cleanup();
        return 0;
    }
    

    Ich habe immer nur am Ende geschaut, da die Files über 9000 Zeilen haben. Oder wie analysiert ihr solche Files?



  • Und wieder ein 3rd-party Module: Qt OPC UA...

    Hast du alle Qt Module aktiviert? Du solltest ersteinmal nur die "Qt Essentials" compilieren lassen.



  • @tomatriga sagte in Fehler beim Build erstellen QT6:

    Ja sicherlich habe ich da schon hereingeschaut

    Na wunderbar. Können wir bloss nicht wissen wenn du es nicht dazuschreibst.

    allerdings steht da am Ende auch wieder der gleiche Fehler:

    C:/Qt/6.1.3/Src/CMakeFiles/CMakeTmp/src.cxx:3:29: fatal error: uaplatformlayer.h: No such file or directory
    
     #include <uaplatformlayer.h>
    
                                 ^
    
    compilation terminated.
    

    Das ist ein Fehler den du noch nie hier gepostet hast. Also zumindest für uns entschieden nicht "wieder der gleiche Fehler".


Anmelden zum Antworten