I have imported CMake-based project into Ubuntu IDE. It uses plain C++ with no QML components. When I try to run it, it does not deploy to device, but runs on desktop (unsuccessfully, reporting it can't find armhf ld library), even though I selected armhf SDK and in Kits tab, my device is selected for current kit, and tooltip in lower-left corner shows that app is going to be installed on device.
When I open Run tab in Project settings, my CMake-based project differs from QMake-based projects in that it has "Command Line Arguments" and "Current Working Directory" fields, but do not "Override app if installed" and "Uninstall app after debugging" (I don't remember exact text now). From this, I conclude that Ubuntu IDE sees my app not as Ubuntu Touch targeted, but as Desktop-targeted. What marks a CMake-based project as Ubuntu Touch targeted fomr IDE?
Is it even possible to run CMake-based project without QML on device? SDK does not have template for this use-case: all CMake-based templates use QML, and the only plain C++ project (QtQuick App) uses QMake.
I have no such problems with QMake-based projects, and presently I use CMake to build a library instead of executable, and then link it into executable with dummy QMake project. But it seems like a kludge.