2009-02-05 14 views
6

Recientemente configuré, para un ejercicio de aprendizaje, una PC de escritorio Ubuntu con KDE 4.2, instalé Eclipse y comencé a buscar información sobre cómo desarrollar KDE. Sé que hay KDevelop y probablemente lo revise en algún momento en el futuro. En este momento, sin embargo, no tengo los encabezados y bibliotecas correctos para crear aplicaciones de KDE en C/C++ usando Eclipse. Si tengo la siguiente:Cómo configurar encabezados y bibliotecas para el desarrollo de Linux

#include <kapplication.h> 

que falla al compilar ya que hay dependencias en otros archivos de cabecera que no están presentes en mis clases de disco duro o de referencia que no se declaran en cualquier lugar.

Entonces, la pregunta es, ¿qué paquetes necesito instalar para tener el conjunto correcto de encabezados que me permitan escribir aplicaciones para KDE 4.2? ¿Hay algún paquete que no debería tener? Alternativamente, si no hay paquetes, ¿dónde puedo obtener los archivos apropiados?

Como corolario, ¿hay algún buen tutorial sobre el desarrollo de KDE, algo así como el libro de Petzold Windows?

EDIT: aclarando lo que realmente estoy buscando: ¿dónde puedo descargar el conjunto correcto de archivos de encabezado/bibliotecas para construir una aplicación de KDE? Los IDE para compilar el código no son un problema real y son fáciles de obtener, como lo es configurar las opciones del compilador para incluir rutas de búsqueda, etc. ¿El paquete KDevelop tiene todos los archivos correctos de inclusión y biblioteca o están separados? Supongo que están separados ya que KDevelop es un IDE que también puede usar otros idiomas, pero probablemente estoy equivocado. Entonces, los archivos de encabezado KDE/Qt que tengo no funcionan, ¿dónde obtengo los correctos?

Skizz

Respuesta

6

asegúrate de haber instalado el paquete build-essential. Para obtener más documentación disponible desde la línea de comandos, instale glibc-doc, manpages-dev, gcc - * - doc, libstdC++ * - doc (reemplace '*' con los números de versión adecuados para su sistema)

EDIT: I ' Voy a aceptar este, pero con algunos bits adicionales.

En primer lugar, this page tenía un par de 'sudo aptitude install' que ordeno que utilicé para obtener algunos paquetes requeridos. También obtuve las aplicaciones KDevelop y QDevelop aunque no estoy seguro de que sean necesarias. También había otro paquete que necesitaba: 'kdelibs5-dev' y este parece ser el paquete clave.Todo finalmente funcionó después de conseguirlo. Eclipse y KDevelop estaban felices construyendo una aplicación simple una vez que se configuraron las configuraciones del compilador, solo las rutas de búsqueda y los nombres de archivos de la biblioteca para Eclipse.

Desde la primera impresión, Eclipse parece mejor que KDevelop por la sencilla razón de que las ventanas de herramientas en Eclipse pueden separarse de la ventana principal y flotar, lo cual es útil en una configuración de monitor doble. No pude ver de todos modos para hacer eso en KDevelop (estoy seguro de que alguien comentará sobre cómo hacer esto).

2

Es posible que tenga alguna pista sobre lo que incluir en sus .classpath y .project archivos si tiene un aspecto y examinar la content of the CMake utilizado para el desarrollo de aplicaciones para KDE4.2

creo que la sección de desarrollo de su sitio de KDE es bastante completo cuando se trata de explicar su entorno de desarrollo.
alt text http://techbase.kde.org/images/thumb/2/25/Action_configure.svg/40px-Action_configure.svg.png especialmente su sección Programming tutorials.

+0

Sí, había leído algo de eso. Esperaba usar Eclipse de forma nativa, es decir, no usar CMake. Hay una gran línea de comando 'sudo aptitude install' en una de las páginas. Lo daré y veré qué pasa. – Skizz

+0

Eso es un avance, pero no estaba sugiriendo que utilizaras CMake, solo importa lo que necesites. Sin embargo, puede definir una compilación personalizada usando CMake: Actualizaré mi respuesta – VonC

+0

No, no puede conectar fácilmente un script externo como su creador personalizado en PDT ... Solo defínalo como una "herramienta externa" y eso no es muy conveniente, excepto te permitiría mantener la misma ventana en todo momento. – VonC

1

Si Eclipse no le proporciona algún asistente/configuración de proyecto inicial para un programa KDE, le recomendaría que instale kdevelop y comience un proyecto así (solo escriba Hello World). Luego puede ver los archivos creados y seguir el proceso de compilación para obtener una mejor comprensión y posiblemente migrarlos a Eclipse.

Incluso si quita los indicadores del compilador para la derecha, incluye directorios, etc., y funciona: debe pensar en usar una de las formas habituales establecidas para construir su software (como qmake para QT, cmake? Para KDE, ..). Si comienza a usar estos en este momento, desplegar/distribuir su software será muy sencillo.

1

echa un vistazo a pkg-config.

Por ejemplo, usted puede ver las bibliotecas instaladas por tiping:

pkg-config --list-all 

Por ejemplo, para encontrar las banderas de compilación de la biblioteca gdk:

~$ pkg-config --cflags gdk 
-I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include 
~$ 

el tiempo que va a vincular con la biblioteca y necesitará también bibliotecas:

~$ pkg-config --libs gdk 
-lgdk -lXi -lXext -lX11 -lm -lglib 
~$ 

Nota: necesitará el desarrollo l ibraries instalados para poder hacer eso.

0

Eclipse es mucho mejor que Kdevelop, pero Eclipse no tiene soporte para desarrollar la aplicación Kde. Si desea desarrollar una aplicación para KDE, entonces debe ir a Kdevelop. Si está utilizando bibliotecas Qt no kde que utilizan Qt Eclipse QtCreator es otra buena opción para desarrollar aplicaciones Qt.

0

He estado usando KDevelop4 desde hace un tiempo y ha sido genial. KDevelop3 es pesado y tiene signos de bitrot (uso de RAM de 300MB con un proyecto de 50k-line). Tengo KDevelop4 (desde la versión beta, he estado ejecutando trunk últimamente) y se necesitan ~ 100MB de RAM (mismo proyecto) y el resaltado contextual, la finalización increíble y otros elementos hacen que sea difícil volver a la sintaxis antigua "aburrida". destacando. No sé si experimental tiene alguna versión disponible, pero con cuántos paquetes hay disponibles, casi me sorprendería que nadie los tenga para Debian. Además, todas las barras de herramientas se pueden separar en todas las aplicaciones de KDE4, por lo que KDevelop4 también las tiene.

2

Para obtener todas las dependencias requeridas para construir una aplicación en Debian (y presumiblemente Ubuntu), use "apt-get build-dep". Así que elige una aplicación aleatoria de KDE: ¿kasteroides? - y ejecutar:

apt-get build-dep kasteroids 

No hay necesidad de adivinar qué herramientas y bibliotecas necesita para construir una aplicación de KDE.

1

Puedo agregar un consejo útil si nota que le falta un archivo y desea saber qué paquete lo proporciona. Instale apt-file, luego puede ejecutar apt-file search filename para encontrar el paquete que contiene ese archivo. Tenga en cuenta que debe ejecutar apt-file update para obtener primero la información más reciente.

Cuestiones relacionadas