CMake QT5_WRAP_UI issue
-
Hi all,
I am trying to make a transition from QMake based build system to CMake one.
So far everything worked quite okish but I run onto the problem I am unable to solve.I do have UI file which I need to be processed and appropriate header file generated. This is usually done by UIC.exe and its kind of automatic in QMake.
Now I am having a CMakeLists.txt file as follows (more or less, I have simplified it):
cmake_minimum_required (VERSION 2.8.11) project (WorkspacePlugin) set(CMAKE_AUTOMOC ON) set (SOURCES Implementation/AddConfigurationWindow.cpp ) set (HEADERS Interaface/AddConfigurationWindow.h ) set (UIS Forms/AddConfiguration.ui ) QT5_WRAP_UI(FORMS_HEADERS ${UIS}) find_package (Qt5Core) find_package (Qt5Gui) find_package (Qt5Widgets) add_library (${PROJECT_NAME} SHARED ${SOURCES} ${HEADERS} ${FORMS_HEADERS}) target_link_libraries (${PROJECT_NAME} CorePlugin Qt5::Core Qt5::Gui Qt5::Widgets)
Now, while building the project I do get the following error:
[ 92%] Generating ui_AddConfiguration.h cd D:\Projects\CPP\Builds\EGETools-Desktop_Qt_5_8_0_MSVC2015_64bit-Debug\EditorPlugins\WorkspacePlugin o D:/Projects/CPP/Builds/EGETools-Desktop_Qt_5_8_0_MSVC2015_64bit-Debug/EditorPlugins/WorkspacePlugin/ui_AddConfiguration.h D:/Projects/CPP/EGETools/EditorPlugins/WorkspacePlugin/Implementation/AddConfiguration.ui 'o' is not recognized as an internal or external command, operable program or batch file.
I have looked into generated make file and I have found the following rule generated for it:
EditorPlugins\WorkspacePlugin\ui_AddConfiguration.h: D:\Projects\CPP\EGETools\EditorPlugins\WorkspacePlugin\Implementation\AddConfiguration.ui @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=D:\Projects\CPP\Builds\EGETools-Desktop_Qt_5_8_0_MSVC2015_64bit-Debug\CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Generating ui_AddConfiguration.h" cd D:\Projects\CPP\Builds\EGETools-Desktop_Qt_5_8_0_MSVC2015_64bit-Debug\EditorPlugins\WorkspacePlugin -o D:/Projects/CPP/Builds/EGETools-Desktop_Qt_5_8_0_MSVC2015_64bit-Debug/EditorPlugins/WorkspacePlugin/ui_AddConfiguration.h D:/Projects/CPP/EGETools/EditorPlugins/WorkspacePlugin/Implementation/AddConfiguration.ui cd D:\Projects\CPP\Builds\EGETools-Desktop_Qt_5_8_0_MSVC2015_64bit-Debug
It can be seen that in that rule '-o' is used rather than plain 'o'. Though I am not sure if that even means anything.
Does anyone happen to know what the problem is here and how to solve it ?
Thanks in advance
PS my environment is: Windows 10 x64, QtCreator 4.2.1, Qt 5.8.0, CMake 3.8.2
-
Hi,
Since you have a recent version of CMake, there's also CMAKE_AUTOUIC that should make your life easier but you will have to change the minimum cmake requirement.
See this Wiki entry for more details.
-
Hi,
Since you have a recent version of CMake, there's also CMAKE_AUTOUIC that should make your life easier but you will have to change the minimum cmake requirement.
See this Wiki entry for more details.