Qt6 Widgets Application not working, exit code -1073741511
-
Hello everyone!
I'm trying to get into programming with Qt6 on desktop using Qt Widgets and I have run into a problem: Whenever I build and run my code, I get the following output:
Process finished with exit code -1073741511 (0xC0000139)
Of course, mostly that's due to an incorrect setup up, but I have previously managed to successfully run the sample Qt program provided by the IDE. I checked the tutorial I used for the setup and it seems like it should work - but it doesn't.
-- Additional Information --
- Tutorial I used
- OS: Windows 11 Home
- IDE: CLion 2025.1
- Build System: CMake (+ ninja)
- Qt Installation: 6.9.0
- Qt Directory: C:\Qt
- Project Name: CPS
- CMakeLists.txt file:
cmake_minimum_required(VERSION 3.31) project(CPS) set(CMAKE_CXX_STANDARD 17) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_AUTOUIC ON) set(CMAKE_PREFIX_PATH "C:/Qt/6.9.0/mingw_64") find_package(Qt6 COMPONENTS Core Gui Widgets REQUIRED) add_executable(CPS main.cpp) target_link_libraries(CPS Qt::Core Qt::Gui Qt::Widgets ) if (WIN32 AND NOT DEFINED CMAKE_TOOLCHAIN_FILE) set(DEBUG_SUFFIX) if (MSVC AND CMAKE_BUILD_TYPE MATCHES "Debug") set(DEBUG_SUFFIX "d") endif () set(QT_INSTALL_PATH "${CMAKE_PREFIX_PATH}") if (NOT EXISTS "${QT_INSTALL_PATH}/bin") set(QT_INSTALL_PATH "${QT_INSTALL_PATH}/..") if (NOT EXISTS "${QT_INSTALL_PATH}/bin") set(QT_INSTALL_PATH "${QT_INSTALL_PATH}/..") endif () endif () if (EXISTS "${QT_INSTALL_PATH}/plugins/platforms/qwindows${DEBUG_SUFFIX}.dll") add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory "$<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins/platforms/") add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy "${QT_INSTALL_PATH}/plugins/platforms/qwindows${DEBUG_SUFFIX}.dll" "$<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins/platforms/") endif () foreach (QT_LIB Core Gui Widgets) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy "${QT_INSTALL_PATH}/bin/Qt6${QT_LIB}${DEBUG_SUFFIX}.dll" "$<TARGET_FILE_DIR:${PROJECT_NAME}>") endforeach (QT_LIB) endif ()
Note: the CMake "code" at the end isn't directly relevant, it's standard since this isn't Qt creator.
- main.cpp file:
#include <QApplication> #include <QPushButton> int main(int argc, char *argv[]) { QApplication a(argc, argv); QPushButton button("Hello world!", nullptr); button.resize(200, 100); button.show(); return QApplication::exec(); }
Note: this the unchanged example project which is working under correct circumtances.
Potential Errors
- Path variable: I added "C:\Qt\Tools\mingw64\bin" and "C:\Qt\6.9.0\mingw_64\bin" to the System Path variable
- CMake Prefix Path: Set correctly, see Qt path and CMakeLists.txt file
If there's a piece of information I missed, tell me and I will add it.
Thanks in advance
HQ2000 -
Please post the full cmake and ninja output.
-
Please post the full cmake and ninja output.
@Axel-Spoerl
CMake output:"C:\Program Files\JetBrains\CLion 2024.3.1.1\bin\cmake\win\x64\bin\cmake.exe" -DCMAKE_BUILD_TYPE=Debug "-DCMAKE_MAKE_PROGRAM=C:/Program Files/JetBrains/CLion 2024.3.1.1/bin/ninja/win/x64/ninja.exe" -G Ninja -S C:\Users\[MyUsrName]\CLionProjects\CPS -B C:\Users\[MyUsrName]\CLionProjects\CPS\cmake-build-debug -- The C compiler identification is GNU 11.2.0 -- The CXX compiler identification is GNU 11.2.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: C:/Qt/Tools/mingw1120_64/bin/gcc.exe - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: C:/Qt/Tools/mingw1120_64/bin/c++.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Performing Test HAVE_STDATOMIC -- Performing Test HAVE_STDATOMIC - Success -- Found WrapAtomic: TRUE -- Could NOT find WrapVulkanHeaders (missing: Vulkan_INCLUDE_DIR) -- Configuring done (7.8s) -- Generating done (0.4s) -- Build files have been written to: C:/Users/[MyUsrName]/CLionProjects/CPS/cmake-build-debug [Previous CMake output restored: 01.05.2025 21:51]
I know it has been restored from yesterday, but since I didn't change anything, it should be fine.
Ninja output:
====================[ Build | CPS | Debug ]===================================== "C:\Program Files\JetBrains\CLion 2024.3.1.1\bin\cmake\win\x64\bin\cmake.exe" --build C:\Users\[MyUsrName]\CLionProjects\CPS\cmake-build-debug --target CPS -j 14 [1/4] Automatic MOC and UIC for target CPS [2/3] Building CXX object CMakeFiles/CPS.dir/main.cpp.obj [3/3] Linking CXX executable CPS.exe Build finished
I'm not 100% sure if that above is the ninja output, correct me if I'm wrong.
Also, I replaced every apperance of my Username with "[MyUsrName]".
@ChrisW67 You mean my installation of Qt is incomplete?
Anyways here are the components I installed:
-
Check if all dependencies can be found via a dependency checker
-
Check if all dependencies can be found via a dependency checker
@Christian-Ehrlicher I checked it and every dependency can be found
-
Also make sure the correct one (from your Qt installation, not from QtCreator directory) are loaded.
-
Also make sure the correct one (from your Qt installation, not from QtCreator directory) are loaded.
@Christian-Ehrlicher the correct one is used.
-
@Christian-Ehrlicher the correct one is used.
@HQ2000 said in Qt6 Widgets Application not working, exit code -1073741511:
the correct one is used.
Then you would not get this crash. Start in a debugger and see what dlls are loaded and at which dll it is crashing.
-
@HQ2000 said in Qt6 Widgets Application not working, exit code -1073741511:
the correct one is used.
Then you would not get this crash. Start in a debugger and see what dlls are loaded and at which dll it is crashing.
@Christian-Ehrlicher do you have an example which one? With the standard CLion debug config I get the exit code -1
here are the loaded DLLs: -
I would either start gdb from the command line or in visual studio - esp. in Visual Studio the debugger panel shows what dlls are loaded when in a nice view. Never used CLion.
-
@Christian-Ehrlicher
Here are the DLLs:- C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Core.dll
- C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Widgets.dll
- C:\Qt\6.9.0\mingw_64\bin\libgcc_s_seh-1.dll
- C:\Qt\6.9.0\mingw_64\bin\libstdc++-6.dll
- C:\WINDOWS\system32\kernel32.dll
- C:\WINDOWS\system32\MSVCRT.dll
I looked up every single one and they're all available.
-
@Christian-Ehrlicher
Here are the DLLs:- C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Core.dll
- C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Widgets.dll
- C:\Qt\6.9.0\mingw_64\bin\libgcc_s_seh-1.dll
- C:\Qt\6.9.0\mingw_64\bin\libstdc++-6.dll
- C:\WINDOWS\system32\kernel32.dll
- C:\WINDOWS\system32\MSVCRT.dll
I looked up every single one and they're all available.
@HQ2000 said in Qt6 Widgets Application not working, exit code -1073741511:
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Core.dll
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Widgets.dll
Your
CMakeLists.txt
lists:find_package(Qt6 COMPONENTS Core Gui Widgets REQUIRED)
So is there not at least a
Qt6Gui.dll
also required?I don't know any more than: somewhere you are messed up in what you have built, where you have placed it and what is required. And I do not use Windows or MinGW.
-
@HQ2000 said in Qt6 Widgets Application not working, exit code -1073741511:
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Core.dll
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Widgets.dll
Your
CMakeLists.txt
lists:find_package(Qt6 COMPONENTS Core Gui Widgets REQUIRED)
So is there not at least a
Qt6Gui.dll
also required?I don't know any more than: somewhere you are messed up in what you have built, where you have placed it and what is required. And I do not use Windows or MinGW.
@JonB said in Qt6 Widgets Application not working, exit code -1073741511:
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Core.dll
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Widgets.dllWhy are the dlls there? Where do they come from? Normally they are used from the PATH env var.
-
@JonB said in Qt6 Widgets Application not working, exit code -1073741511:
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Core.dll
C:\Users[MyUsrName]\CLionProjects\CPS\cmake-build-debug\Qt6Widgets.dllWhy are the dlls there? Where do they come from? Normally they are used from the PATH env var.
@Christian-Ehrlicher I agree. I was just quoting from the OP's post. We know the OP really needs to sort out what they have where.
-
@JonB
@Christian-Ehrlicher
Since you both haven't worked with CLion and Qt so far (I guess), let me clarify some things:- Qt6Gui is required as a standard (you can change that of course) if you use CLion with Qt, so it is available for but not required by the sample program since none of its functionality is used.
- The DLLs are there because because of the "find_package" command in the CMakeLists.txt file.
I tried to run it with gdb as @Christian-Ehrlicher told me and I was able to run it with any problems...
@hskoglund
I tried it...same error -
@JonB
@Christian-Ehrlicher
Since you both haven't worked with CLion and Qt so far (I guess), let me clarify some things:- Qt6Gui is required as a standard (you can change that of course) if you use CLion with Qt, so it is available for but not required by the sample program since none of its functionality is used.
- The DLLs are there because because of the "find_package" command in the CMakeLists.txt file.
I tried to run it with gdb as @Christian-Ehrlicher told me and I was able to run it with any problems...
@hskoglund
I tried it...same error@HQ2000 said in Qt6 Widgets Application not working, exit code -1073741511:
The DLLs are there because because of the "find_package" command in the CMakeLists.txt file.
No, find_package() does not copy anything.
-
Hello everyone!
I'm trying to get into programming with Qt6 on desktop using Qt Widgets and I have run into a problem: Whenever I build and run my code, I get the following output:
Process finished with exit code -1073741511 (0xC0000139)
Of course, mostly that's due to an incorrect setup up, but I have previously managed to successfully run the sample Qt program provided by the IDE. I checked the tutorial I used for the setup and it seems like it should work - but it doesn't.
-- Additional Information --
- Tutorial I used
- OS: Windows 11 Home
- IDE: CLion 2025.1
- Build System: CMake (+ ninja)
- Qt Installation: 6.9.0
- Qt Directory: C:\Qt
- Project Name: CPS
- CMakeLists.txt file:
cmake_minimum_required(VERSION 3.31) project(CPS) set(CMAKE_CXX_STANDARD 17) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_AUTOUIC ON) set(CMAKE_PREFIX_PATH "C:/Qt/6.9.0/mingw_64") find_package(Qt6 COMPONENTS Core Gui Widgets REQUIRED) add_executable(CPS main.cpp) target_link_libraries(CPS Qt::Core Qt::Gui Qt::Widgets ) if (WIN32 AND NOT DEFINED CMAKE_TOOLCHAIN_FILE) set(DEBUG_SUFFIX) if (MSVC AND CMAKE_BUILD_TYPE MATCHES "Debug") set(DEBUG_SUFFIX "d") endif () set(QT_INSTALL_PATH "${CMAKE_PREFIX_PATH}") if (NOT EXISTS "${QT_INSTALL_PATH}/bin") set(QT_INSTALL_PATH "${QT_INSTALL_PATH}/..") if (NOT EXISTS "${QT_INSTALL_PATH}/bin") set(QT_INSTALL_PATH "${QT_INSTALL_PATH}/..") endif () endif () if (EXISTS "${QT_INSTALL_PATH}/plugins/platforms/qwindows${DEBUG_SUFFIX}.dll") add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory "$<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins/platforms/") add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy "${QT_INSTALL_PATH}/plugins/platforms/qwindows${DEBUG_SUFFIX}.dll" "$<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins/platforms/") endif () foreach (QT_LIB Core Gui Widgets) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy "${QT_INSTALL_PATH}/bin/Qt6${QT_LIB}${DEBUG_SUFFIX}.dll" "$<TARGET_FILE_DIR:${PROJECT_NAME}>") endforeach (QT_LIB) endif ()
Note: the CMake "code" at the end isn't directly relevant, it's standard since this isn't Qt creator.
- main.cpp file:
#include <QApplication> #include <QPushButton> int main(int argc, char *argv[]) { QApplication a(argc, argv); QPushButton button("Hello world!", nullptr); button.resize(200, 100); button.show(); return QApplication::exec(); }
Note: this the unchanged example project which is working under correct circumtances.
Potential Errors
- Path variable: I added "C:\Qt\Tools\mingw64\bin" and "C:\Qt\6.9.0\mingw_64\bin" to the System Path variable
- CMake Prefix Path: Set correctly, see Qt path and CMakeLists.txt file
If there's a piece of information I missed, tell me and I will add it.
Thanks in advance
HQ2000@Christian-Ehrlicher you're right, it's done here
@HQ2000 said in Qt6 Widgets Application not working, exit code -1073741511:foreach (QT_LIB Core Gui Widgets) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy "${QT_INSTALL_PATH}/bin/Qt6${QT_LIB}${DEBUG_SUFFIX}.dll" "$<TARGET_FILE_DIR:${PROJECT_NAME}>") endforeach (QT_LIB)
-
@Christian-Ehrlicher you're right, it's done here
@HQ2000 said in Qt6 Widgets Application not working, exit code -1073741511:foreach (QT_LIB Core Gui Widgets) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy "${QT_INSTALL_PATH}/bin/Qt6${QT_LIB}${DEBUG_SUFFIX}.dll" "$<TARGET_FILE_DIR:${PROJECT_NAME}>") endforeach (QT_LIB)
@HQ2000
So purely OOI could you comment on why thatforeach
has not copiedQt6Gui.dll
as I asked earlier? However you say you know it works without that, somehow.Confirm you are not building your project for debug?
Remove everything on your
PATH
environment variable so we know it is not picking something up somewhere?