[ feedback] 刚装好的IDE,和QT,建个工程就有编译报警,有人碰到如何解决的? Resolved
Tofloor
poster avatar
MFC转班生
deepin
2025-12-04 09:31
Author

这几天在Deepin20上 研究用Deepin IDE 和 QT 做点东西。需要用C++17版本,就装上了Deepin23的系统。

用DeepinIDE时,发现有报警,找了各种原因,最后试出来,在刚装好的IDE和QT的依赖就有这个报警。

升级安装为Deepin25后,也有这个问题。换过3台电脑装Deepin25,Deepin23,都这样。

虽然做的东西也能运行,不过总有个报警,是什么原因?下面是我在Deepin25系统上的截图。

CMake Deprecation Warning:

Support for "Extra Generators" like

CodeBlocks

is deprecated and will be removed from a future version of CMake. IDEs may

use the cmake-file-api(7) to view CMake-generated project build trees.

CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):

Compatibility with CMake < 3.10 will be removed from a future version of

CMake.

Update the VERSION argument value. Or, use the ... syntax

to tell CMake that the project requires at least but has been updated

to work with policies introduced by or earlier.

image.png
image.png
image.png

image.png

Reply Favorite View the author
All Replies
2 / 2
To page
wlly-lzh
deepin
2025-12-05 13:27
#21

我今天试着在虚拟机里面搞了一下,我只能说“能编译就行,别管什么警告了”。

deepin-IDE它就是默认将 CodeBlocks作为编译设置的,而不是设置为cmake默认的 Unix Makefiles

反正就很奇怪,这样做有什么好处呢?


还有,尽可能多用用qtcretor、vscode这些工具,说到底deepin-IDE只是一个小众IDE,它只能在deepin上用,你甚至无法在其他Linux平台使用它。

其次,不要太依赖IDE,多学习一些cmake命令吧。

Reply View the author
MFC转班生
deepin
2025-12-05 19:54
#22
wlly-lzh

我今天试着在虚拟机里面搞了一下,我只能说“能编译就行,别管什么警告了”。

deepin-IDE它就是默认将 CodeBlocks作为编译设置的,而不是设置为cmake默认的 Unix Makefiles

反正就很奇怪,这样做有什么好处呢?


还有,尽可能多用用qtcretor、vscode这些工具,说到底deepin-IDE只是一个小众IDE,它只能在deepin上用,你甚至无法在其他Linux平台使用它。

其次,不要太依赖IDE,多学习一些cmake命令吧。

嗯.确实,这个IDE有不少的局限性。

我也是刚想转到Linux系统上学习一下,谢谢你非常中肯的建议。

我再看看其它的IDE上用。😊

Reply View the author
MFC转班生
deepin
2025-12-07 20:08
#23

周末重装了Deepin20系统。

只要把版本调高就不报警了。

image.png

image.png

image.png
image.png

Reply View the author
BLumia
deepin
2025-12-08 11:20
#24
MFC转班生

不是因为这个版本报错.

现在不管改成多少,都会有这个报警.

想解决这个报警的问题.😁

其他情况可能有其他报错,但至少你截图的那个是【一定】会因为声明版本高于实际所使用的版本而报错的。

deepin 在 Telegram 和 Matrix 有开发者实时聊天群组,有兴趣的话也可以那里讨论,沟通效率比帖子要高一些。

如果倾向于自己排查的话,建议脱离 IDE 先简单了解下 CMake?

不过前面提到的问题仍然需要你注意,你CMakeLists.txt里写的版本声明,除非你确实知道在干什么,否则建议最低写3.5以上的版本(但不能高于你实际使用的CMake版本)。deepin 20所提供的CMake还没有放弃3.5以下的兼容,25的CMake对3.5以下版本已经是警告状态了,CMake4.0已经默认放弃了相关的兼容。如果你看不懂我这段话,你就至少直接把它改成3.5,或者改成3.16(这是Qt所要求的最低版本,虽然低于这个版本不会报错),这样你deepin20、23、25都不会有问题。

Reply View the author
MFC转班生
deepin
2025-12-08 19:05
#25
BLumia

其他情况可能有其他报错,但至少你截图的那个是【一定】会因为声明版本高于实际所使用的版本而报错的。

deepin 在 Telegram 和 Matrix 有开发者实时聊天群组,有兴趣的话也可以那里讨论,沟通效率比帖子要高一些。

如果倾向于自己排查的话,建议脱离 IDE 先简单了解下 CMake?

不过前面提到的问题仍然需要你注意,你CMakeLists.txt里写的版本声明,除非你确实知道在干什么,否则建议最低写3.5以上的版本(但不能高于你实际使用的CMake版本)。deepin 20所提供的CMake还没有放弃3.5以下的兼容,25的CMake对3.5以下版本已经是警告状态了,CMake4.0已经默认放弃了相关的兼容。如果你看不懂我这段话,你就至少直接把它改成3.5,或者改成3.16(这是Qt所要求的最低版本,虽然低于这个版本不会报错),这样你deepin20、23、25都不会有问题。

基本上看懂了.

我知道那个一定报错的图,只是为了让它显示出我用的是哪个版本.😁

我会再去仔细学学CMake. 这几天有点渐渐入门感觉了.joy

Reply View the author
2 / 2
To page