2008-09-23 10 views
12

Tengo un programa multiplataforma que se ejecuta en Windows, Linux y Macintosh. Mi versión de Windows tiene un ícono, pero no sé cómo hacer que tenga uno para mi compilación de Linux. ¿Hay un formato estándar para KDE, Gnome, etc. o tendré que hacer algo especial para cada uno?Cómo configurar el icono del escritorio de mi aplicación para Linux: KDE, Gnome, etc.

Mi aplicación está en C++ y se distribuye como fuente para que el usuario final la compile con gcc.

Si puedo tener el icono incrustado directamente dentro de mi binario exe que sería el mejor.

Respuesta

10

Para Gnome y Kde, es probable que desee incluir un archivo de escritorio con su aplicación que defina cómo se lanzará. La especificación se puede encontrar here. Si tiene un instalador incluido con su aplicación, probablemente desee hacer que genere este archivo de escritorio y ponerlo en los lugares correctos para hacer entradas de menú y lo que sea

1

La comunidad de KDE con su serie KDE 4 comenzó a usar CMake como un sistema de compilación Desarrollaron una macro CMake que sabe cómo configurar un icono para su aplicación en relación con la plataforma (windows (incrustado en exe), mac (paquetes .app), Linux (archivos .desktop), etc.)

Quizás pueda usarlo

3

Si está utilizando uno de los pre-cocido al horno F/OSS construir sistemas, como el apoyo CMake de KDE, es realmente bastante fácil una vez que tenga un archivo .desktop:

instalar (ARCHIVOS myapp.desktop DESTINO $ {} XDG_APPS_INSTALL_DIR) kde4_add_app_icon (myapp_SRCS "$ {} CMAKE_CURRENT_SOURCE_DIR /hi*-app-myappname.png")

Si usted está rodando su cuenta, considere el uso de xdg-utils, que incluye pequeñas secuencias de comandos útiles como xdg-escritorio-menú (instala elementos de menú de escritorio) y xdg-desktop-icon (instala iconos en el escritorio) para tales cosas.

El estándar .desktop ya se señaló en el primer comentario, aunque también puede tomar uno que ya está instalado en su sistema y modificarlo desde allí. En cuanto a los íconos, PNG y SVG son gentilmente compatibles, aunque los PNG tienden a dar los mejores resultados aún.

Cuestiones relacionadas