Discussion:
[Qt-creator] kit with sdktool that has empty cmake configuration
Christoph Mathys
2018-11-15 15:15:55 UTC
Permalink
Hi,

I use sdktool to create all kit configurations that we use internally
(debugger, cmake, toolchain, kits). Unfortunately, I still need to
resort to sed to delete an empty value from the cmake argument list.

My call to sdktool is about the following:
sdktool addKit --id kit_gcc49_cmake \
--name "Gcc 4.9 cmake" \
--debugger gdb_7_11 \
--debuggerengine 1 \
--Ctoolchain ProjectExplorer.ToolChain.Gcc:tc_gcc49 \
--Cxxtoolchain ProjectExplorer.ToolChain.Gcc:tc_gccpp49 \
--cmake cmake \
--devicetype Desktop \
--cmake-config ""

Leaving out --cmake-config will not write the relevant valuelist
"CMake.ConfigurationKitInformation" to the file. QtCreator will then
default to some stuff that we don't want. Passing an empty string as
above creates the list with an empty <value>-node. Leaving that node
inside the configuration leads QtCreator to complain with:

CMake configuration changed on disk.
Key CMake Project
<removed>

Any ideas?

Sidenote: sdktool and QtC seem to disagree on the type for debugger EngineType:
sdktool: <value type="uint" key="EngineType">1</value>
qtcreator: <value type="int" key="EngineType">1</value>

Thx!
Christoph
Tobias Hunger
2018-11-16 12:00:36 UTC
Permalink
Hello,
Post by Christoph Mathys
Hi,
I use sdktool to create all kit configurations that we use internally
(debugger, cmake, toolchain, kits). Unfortunately, I still need to
resort to sed to delete an empty value from the cmake argument list.
sdktool addKit --id kit_gcc49_cmake \
--name "Gcc 4.9 cmake" \
--debugger gdb_7_11 \
--debuggerengine 1 \
--Ctoolchain ProjectExplorer.ToolChain.Gcc:tc_gcc49 \
--Cxxtoolchain ProjectExplorer.ToolChain.Gcc:tc_gccpp49 \
--cmake cmake \
--devicetype Desktop \
--cmake-config ""
Leaving out --cmake-config will not write the relevant valuelist
"CMake.ConfigurationKitInformation" to the file. QtCreator will then
default to some stuff that we don't want. Passing an empty string as
above creates the list with an empty <value>-node. Leaving that node
CMake configuration changed on disk.
Key CMake Project
<removed>
When does this show?

That message is supposed to be shown when Creator and CMake disagree on
the settings used in a cmake build directory.

So if you did set up your build directory before, then this is expected.
Post by Christoph Mathys
sdktool: <value type="uint" key="EngineType">1</value>
qtcreator: <value type="int" key="EngineType">1</value>
Please report a bug about stuff like this!

Best Regards,
Tobias

Loading...