Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用CMake设置应用程序图标_C++_Qt_Cmake_Icons_Cross Platform - Fatal编程技术网

C++ 使用CMake设置应用程序图标

C++ 使用CMake设置应用程序图标,c++,qt,cmake,icons,cross-platform,C++,Qt,Cmake,Icons,Cross Platform,是否有跨平台的方法使用CMake设置应用程序图标?我在Qt5.4中使用Cmake 3.0.2 Qt中显示了一种方法,但它不是跨平台的。CMake不会为您处理此问题 在一些平台上有几个“应用程序图标”。例如,在一个遵循FreeDesktop.org标准的类UNIX系统上(基本上是今天在Linux上可以看到的任何东西,不管它是KDE、Gnome、Unity、XFCE还是其他的数据),这是通过在应用程序的桌面文件中设置适当的图标条目来完成的。有关详细信息,请参阅。这就是显示为启动器图标的内容,一些DE

是否有跨平台的方法使用CMake设置应用程序图标?我在Qt5.4中使用Cmake 3.0.2


Qt中显示了一种方法,但它不是跨平台的。

CMake不会为您处理此问题

在一些平台上有几个“应用程序图标”。例如,在一个遵循FreeDesktop.org标准的类UNIX系统上(基本上是今天在Linux上可以看到的任何东西,不管它是KDE、Gnome、Unity、XFCE还是其他的数据),这是通过在应用程序的
桌面
文件中设置适当的
图标
条目来完成的。有关详细信息,请参阅。这就是显示为启动器图标的内容,一些DE(如最近的Plasma)将使用它作为任务栏中的窗口图标,并具有适当的主题覆盖

可能您也在提供Windows安装程序,可能是基于NSIS的。那么您可能也应该在
.nsi
中指定这一点


实际的窗口图标也应该由程序员设置。正如您所看到的,有很多地方可能会设置“应用程序图标”。如果您正在寻找一个真实的例子,请查看。通过CMake,为NSIS代码寻找实际的图标文件,创建一个Windows RC文件,最后从C++代码中设置应用程序图标。在编译项目期间没有通用的方法。在Linux上通过CMake与MinGW交叉编译时,应用程序图标问题变得很明显。