Hola, recientemente instalé Arch
He querido empezar a experimentar con el desarrollo en C/C++ en Linux, pero al intentar compilar un ejemplo de como crear una ventana en GTK GCC me da un error diciéndome que no encuentra las librerías necesarias:
ref@pc ~/exp> gcc -o gtkwindow gtkwindow.c $(pkg-config --cflags --libs gtk±3.0)
gtkwindow.c:1:10: error fatal: iostream: No existe el fichero o el directorio
1 | #include
| ^~~~~~~~~~
compilación terminada.
ref@pc ~/exp [1]>
He estado buscando soluciones pero no he encontrado nada útil, tengo las librerías y los headers instalados pero no sé como solucionar eso, incluso pasándole las direcciones directamente falla, no sé si tengo que configurar algo más.
De antemano gracias
Bueno, si lo estas haciendo en C++ (supongo eso por la libreria iostream), el primer error seria que estas intentando usar el compilador de C, para C++ es el comando g++
me acabo de dar cuenta de ese error jajaja, aún así, usando g++ continúa el error principal:
ref@pc ~/exp> g++ gtkwindow.c -o gtkwindow $(pkg-config --cflags --libs gtk±3.0)
gtkwindow.c:2:10: error fatal: gtk/gtk.h: No existe el fichero o el directorio
2 | #include <gtk/gtk.h>
| ^~~~~~~~~~~
compilación terminada.
ref@pc ~/exp [1]> ls /usr/include/gtk-3.0/
gdk/ gtk/ unix-print/
ref@pc ~/exp>
Para C++ no deberias intentar usar la libreria directamente. De acuerdo con la documentación deberias usar gtkmm
Y lo de que no encuentre la libreria es porque busca el archivo en /usr/include
, pero como puedes ver en tu comando ls
, esta en una carpeta más de profundidad. Entonces, para que funcione tienes de dos:
- Copiar el contenido de
gtk-3.0
a /usr/include
- Decirle al compilador donde encontrar los headers faltantes, agregando algo como lo siguiente:
-I/usr/include/gtk-3.0
1 me gusta