Pregunta

Tengo una cruz de la plataforma de programa que se ejecuta en Windows, Linux y Macintosh.Mi versión de windows tiene un Icono, pero no sé cómo hacer para tener uno para mi Linux.Existe un formato estándar para KDE, Gnome, etc.o tengo que hacer algo especial para cada uno de ellos?

Mi aplicación es en c++ y distribuidos de la fuente para que el usuario final va a compilar con gcc.

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

¿Fue útil?

Solución

Para Gnome y Kde, usted probablemente desea incluir un archivo de escritorio con la aplicación que define cómo va a ser lanzado.La especificación puede ser encontrado aquí.Si usted tiene un instalador incluido con la aplicación, usted probablemente quiere generar este archivo escritorio y ponerlo en el lugar correcto para hacer las entradas de menú y otras cosas

Otros consejos

Si usted está utilizando uno de los pre-cocido F/OSS construir sistemas, tales como los de KDE CMake apoyo, es muy fácil una vez que usted tiene una .archivo de escritorio:

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

Si usted está rodando su propia, considere el uso de xdg-utils, que incluye pequeño y práctico scripts como xdg-escritorio-menú (instala el escritorio de elementos de menú) y xdg-escritorio-icono (instala los iconos en el escritorio) para este tipo de cosas.

El .escritorio estándar ya se señaló en el primer comentario, aunque también se puede simplemente agarrar uno que ya está instalado en su sistema y modificarlo desde ahí.Como para los iconos, Png y SVGs son geerally apoyado a pesar de que los archivos Png tienden a dar los mejores resultados aún.

La comunidad de KDE con KDE 4 de la serie comenzó a usar CMake como un sistema de construcción.Ellos desarrollaron un CMake macro que sabe cómo establecer un icono de la aplicación sin importar la plataforma (windows (incrustado en el archivo exe), mac (.aplicación de paquetes), linux (.los archivos de escritorio), etc.)

Tal vez usted puede utilizar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top