[opensuse-es] (GTK/Qt/WxWidgetts)+ C++
Hola a todos esta es mi primera vez que escribo en esta lista, estoy intentando aprender a programar con interficies graficas y he probado con GTK con Qt i con WxWidgetts,pero tengo problemas con todos al compilar el tipico "hello world" he estado mirando y en los tutoriales que he encontrado he visto que cuando incluyen una libreria lo hace en /gtk/xxx.h o /Qt/xxx.h o /Wx/xxx.h y ademas cuando compilava los programas me decia que no encontrava los archivos.Esto me ha hecho sospechar y he creado las correspondientes carpetas en /usr/include y he volcado en ellas los archivos .h correspondientes, pero aun asi no he conseguido y en lugar de darme los errores de que no encuentra los archivos me da otros por cada archivo .h .Tambien pense que no fuera que no tubiera instalados los paquetes devel correspondientes pero los instale y sigue igual.Para mas detalle estoy usando Open Suse 11.Alguien ha conseguido hacer lo que estoy intenado? Muchas gracias --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El dom, 24-08-2008 a las 21:36 +0200, Xavier Barnada escribió:
Hola a todos esta es mi primera vez que escribo en esta lista, estoy intentando aprender a programar con interficies graficas y he probado con GTK con Qt i con WxWidgetts,pero tengo problemas con todos al compilar el tipico "hello world" he estado mirando y en los tutoriales que he encontrado he visto que cuando incluyen una libreria lo hace en /gtk/xxx.h o /Qt/xxx.h o /Wx/xxx.h y ademas cuando compilava los programas me decia que no encontrava los archivos.Esto me ha hecho sospechar y he creado las correspondientes carpetas en /usr/include y he volcado en ellas los archivos .h correspondientes, pero aun asi no he conseguido y en lugar de darme los errores de que no encuentra los archivos me da otros por cada archivo .h .Tambien pense que no fuera que no tubiera instalados los paquetes devel correspondientes pero los instale y sigue igual.Para mas detalle estoy usando Open Suse 11.Alguien ha conseguido hacer lo que estoy intenado?
No, seguro que no. No acabo de entender todo el lio. Explicalo paso a paso. En que lenguaje quieres programar? Con IDE o sin IDE? A ver si me entero de algo. Un saludo LLuis
El Sunday 24 August 2008 21:47:37 lluis escribió:
El dom, 24-08-2008 a las 21:36 +0200, Xavier Barnada escribió:
Hola a todos esta es mi primera vez que escribo en esta lista, estoy intentando aprender a programar con interficies graficas y he probado con GTK con Qt i con WxWidgetts,pero tengo problemas con todos al compilar el tipico "hello world" he estado mirando y en los tutoriales que he encontrado he visto que cuando incluyen una libreria lo hace en /gtk/xxx.h o /Qt/xxx.h o /Wx/xxx.h y ademas cuando compilava los programas me decia que no encontrava los archivos.Esto me ha hecho sospechar y he creado las correspondientes carpetas en /usr/include y he volcado en ellas los archivos .h correspondientes, pero aun asi no he conseguido y en lugar de darme los errores de que no encuentra los archivos me da otros por cada archivo .h .Tambien pense que no fuera que no tubiera instalados los paquetes devel correspondientes pero los instale y sigue igual.Para mas detalle estoy usando Open Suse 11.Alguien ha conseguido hacer lo que estoy intenado?
No, seguro que no.
No acabo de entender todo el lio.
Explicalo paso a paso.
En que lenguaje quieres programar?
Con IDE o sin IDE?
A ver si me entero de algo.
Un saludo
LLuis
El lenguaje es C++ , lo he probado con varios IDE como Anjuta, KDevelop y Eclipse.Probe de compilarlos desde el IDE pero al ver que no funcionavan , probe de hacerlo desde el terminal con el gcc .De hecho creo que he probado demasiadas cosas . Lo primero que hice fue buscar un tutorial para Qt en el que aparecia el tipico hello world, probe de compilarlo tal i como aparecia alli i no funciono ya que no encontraba el qapplication.h, use el comando find i encontre el archivo en la url /usr/include/QtGui Luego a partir de aqui deduje que el problema estabe en que el gcc no encontraba el archivo .h ya que el include era , por eso cree una carpeta en /usr/include/ llamada qt y en ella copie todos los archivos .h de /usr/include/QtGui Al ver que no compilava desde Anjuta , probe de compilar el archivo desde el terminal con gcc i hice gcc hola.cpp con lo que obtube: "hola.cpp: In function ‘int main(int, char**)’: hola.cpp:18: error: ‘class QApplication’ no tiene un miembro llamado ‘setMainWidget’" El codigo fuente del archivo es el siguiente: /**************************************************************** ** ** Qt tutorial 1 ** ****************************************************************/ #include <./Qt/qapplication.h> #include <./Qt/qpushbutton.h> int main( int argc, char **argv ) { QApplication a( argc, argv ); QPushButton hello( "Hello world!", 0 ); hello.resize( 100, 30 ); a.setMainWidget( &hello ); hello.show(); return a.exec(); } Y a partir de aqui ya no supe a que era debido y pense que fuera problema de una mala instalacion o bien de un problema de configuracion o de vairables de entorno y luego probe con las otras GUIs y me dieron errores similares por no encontrar los .h Muchas gracias, espero que asi quede mas claro --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Sunday 24 August 2008 22:11:31 Xavier Barnada escribió:
El Sunday 24 August 2008 21:47:37 lluis escribió:
El dom, 24-08-2008 a las 21:36 +0200, Xavier Barnada escribió:
Hola a todos esta es mi primera vez que escribo en esta lista, estoy intentando aprender a programar con interficies graficas y he probado con GTK con Qt i con WxWidgetts,pero tengo problemas con todos al compilar el tipico "hello world" he estado mirando y en los tutoriales que he encontrado he visto que cuando incluyen una libreria lo hace en /gtk/xxx.h o /Qt/xxx.h o /Wx/xxx.h y ademas cuando compilava los programas me decia que no encontrava los archivos.Esto me ha hecho sospechar y he creado las correspondientes carpetas en /usr/include y he volcado en ellas los archivos .h correspondientes, pero aun asi no he conseguido y en lugar de darme los errores de que no encuentra los archivos me da otros por cada archivo .h .Tambien pense que no fuera que no tubiera instalados los paquetes devel correspondientes pero los instale y sigue igual.Para mas detalle estoy usando Open Suse 11.Alguien ha conseguido hacer lo que estoy intenado?
No, seguro que no.
No acabo de entender todo el lio.
Explicalo paso a paso.
En que lenguaje quieres programar?
Con IDE o sin IDE?
A ver si me entero de algo.
Un saludo
LLuis
El lenguaje es C++ , lo he probado con varios IDE como Anjuta, KDevelop y Eclipse.Probe de compilarlos desde el IDE pero al ver que no funcionavan , probe de hacerlo desde el terminal con el gcc .De hecho creo que he probado demasiadas cosas .
Lo primero que hice fue buscar un tutorial para Qt en el que aparecia el tipico hello world, probe de compilarlo tal i como aparecia alli i no funciono ya que no encontraba el qapplication.h, use el comando find i encontre el archivo en la url /usr/include/QtGui
Luego a partir de aqui deduje que el problema estabe en que el gcc no encontraba el archivo .h ya que el include era , por eso cree una carpeta en /usr/include/ llamada qt y en ella copie todos los archivos .h de /usr/include/QtGui
Al ver que no compilava desde Anjuta , probe de compilar el archivo desde el terminal con gcc i hice gcc hola.cpp con lo que obtube: "hola.cpp: In function ‘int main(int, char**)’: hola.cpp:18: error: ‘class QApplication’ no tiene un miembro llamado ‘setMainWidget’"
Tu problema es que estás mezclando Qt3 con Qt4. No son compatibles y no comparten librerías ni ficheros .h. No es lo mismo el include de QtGui, que qapplication.h Ese es un error del código pero los ficheros include si que los ha encontrado, de lo contrario el compilador habría dado un error. ¿Qué librerías estás usando Qt3 o 4? Por el código que has puesto parece que estés usando Qt3, pero tendrás instalados los include de Qt4. De todas formas borra los ficheros que has copiado, vas a armarla buena. Esos ficheros deben estar en el sistema y si no están es que algo no está bien instalado o tu código no es correcto (lo cual parece que esté sucediendo ambas cosas) Coge un tutorial de Qt4 y empieza de nuevo :) --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Sunday 24 August 2008 22:33:44 Raúl Moratalla Guillén escribió:
El Sunday 24 August 2008 22:11:31 Xavier Barnada escribió:
El Sunday 24 August 2008 21:47:37 lluis escribió:
El dom, 24-08-2008 a las 21:36 +0200, Xavier Barnada escribió:
Hola a todos esta es mi primera vez que escribo en esta lista, estoy intentando aprender a programar con interficies graficas y he probado con GTK con Qt i con WxWidgetts,pero tengo problemas con todos al compilar el tipico "hello world" he estado mirando y en los tutoriales que he encontrado he visto que cuando incluyen una libreria lo hace en /gtk/xxx.h o /Qt/xxx.h o /Wx/xxx.h y ademas cuando compilava los programas me decia que no encontrava los archivos.Esto me ha hecho sospechar y he creado las correspondientes carpetas en /usr/include y he volcado en ellas los archivos .h correspondientes, pero aun asi no he conseguido y en lugar de darme los errores de que no encuentra los archivos me da otros por cada archivo .h .Tambien pense que no fuera que no tubiera instalados los paquetes devel correspondientes pero los instale y sigue igual.Para mas detalle estoy usando Open Suse 11.Alguien ha conseguido hacer lo que estoy intenado?
No, seguro que no.
No acabo de entender todo el lio.
Explicalo paso a paso.
En que lenguaje quieres programar?
Con IDE o sin IDE?
A ver si me entero de algo.
Un saludo
LLuis
El lenguaje es C++ , lo he probado con varios IDE como Anjuta, KDevelop y Eclipse.Probe de compilarlos desde el IDE pero al ver que no funcionavan , probe de hacerlo desde el terminal con el gcc .De hecho creo que he probado demasiadas cosas .
Lo primero que hice fue buscar un tutorial para Qt en el que aparecia el tipico hello world, probe de compilarlo tal i como aparecia alli i no funciono ya que no encontraba el qapplication.h, use el comando find i encontre el archivo en la url /usr/include/QtGui
Luego a partir de aqui deduje que el problema estabe en que el gcc no encontraba el archivo .h ya que el include era , por eso cree una carpeta en /usr/include/ llamada qt y en ella copie todos los archivos .h de /usr/include/QtGui
Al ver que no compilava desde Anjuta , probe de compilar el archivo desde el terminal con gcc i hice gcc hola.cpp con lo que obtube: "hola.cpp: In function ‘int main(int, char**)’: hola.cpp:18: error: ‘class QApplication’ no tiene un miembro llamado ‘setMainWidget’"
Tu problema es que estás mezclando Qt3 con Qt4. No son compatibles y no comparten librerías ni ficheros .h. No es lo mismo el include de QtGui, que qapplication.h Ese es un error del código pero los ficheros include si que los ha encontrado, de lo contrario el compilador habría dado un error. ¿Qué librerías estás usando Qt3 o 4? Por el código que has puesto parece que estés usando Qt3, pero tendrás instalados los include de Qt4. De todas formas borra los ficheros que has copiado, vas a armarla buena. Esos ficheros deben estar en el sistema y si no están es que algo no está bien instalado o tu código no es correcto (lo cual parece que esté sucediendo ambas cosas) Coge un tutorial de Qt4 y empieza de nuevo :) --------------------------------------------------------------------- Para dar de baja la suscripcin, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Ok desconocia que existieran distintas versiones, ahora acabo de buscar un tutorial para Qt4 i creo que he encontrado uno que por el titulo se adecua bastante a mi "Qt4 tutorial for absolute beginners" http://sector.ynet.sk/qt4-tutorial/ Muchas gracias por todo --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Sunday 24 August 2008 22:39:28 Xavier Barnada escribió:
Ok desconocia que existieran distintas versiones, ahora acabo de buscar un tutorial para Qt4 i creo que he encontrado uno que por el titulo se adecua bastante a mi "Qt4 tutorial for absolute beginners"
http://sector.ynet.sk/qt4-tutorial/
Muchas gracias por todo
De nada y suerte con la programación :) --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Sunday 24 August 2008 22:39:28 Xavier Barnada escribió:
Ok desconocia que existieran distintas versiones, ahora acabo de buscar un tutorial para Qt4 i creo que he encontrado uno que por el titulo se adecua bastante a mi "Qt4 tutorial for absolute beginners"
Cuidado, que parece que no todos los ejemplos de ese tutorial puede que te compilen: "Examples in this tutorial does not seem to work with Qt 4.3.0" Si estás usando openSUSE 11 tendrás instalada Qt 4.4 --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Sunday 24 August 2008 22:47:33 Raúl Moratalla Guillén escribió:
El Sunday 24 August 2008 22:39:28 Xavier Barnada escribió:
Ok desconocia que existieran distintas versiones, ahora acabo de buscar un tutorial para Qt4 i creo que he encontrado uno que por el titulo se adecua bastante a mi "Qt4 tutorial for absolute beginners"
Cuidado, que parece que no todos los ejemplos de ese tutorial puede que te compilen: "Examples in this tutorial does not seem to work with Qt 4.3.0" Si estás usando openSUSE 11 tendrás instalada Qt 4.4 --------------------------------------------------------------------- Para dar de baja la suscripcin, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Gracias por el aviso , ya lo he instalado --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Sunday 24 August 2008 21:36:55 Xavier Barnada escribió:
Hola a todos esta es mi primera vez que escribo en esta lista, estoy intentando aprender a programar con interficies graficas y he probado con GTK con Qt i con WxWidgetts,pero tengo problemas con todos al compilar el tipico "hello world" he estado mirando y en los tutoriales que he encontrado he visto que cuando incluyen una libreria lo hace en /gtk/xxx.h o /Qt/xxx.h o /Wx/xxx.h y ademas cuando compilava los programas me decia que no encontrava los archivos.Esto me ha hecho sospechar y he creado las correspondientes carpetas en /usr/include y he volcado en ellas los archivos .h correspondientes, pero aun asi no he conseguido y en lugar de darme los errores de que no encuentra los archivos me da otros por cada archivo .h .Tambien pense que no fuera que no tubiera instalados los paquetes devel correspondientes pero los instale y sigue igual.Para mas detalle estoy usando Open Suse 11.Alguien ha conseguido hacer lo que estoy intenado? Muchas gracias
Hola, ¿por qué no pruebas a generar y compilar un proyecto de Qt o KDE en KDevelop? Automáticamente te generará los scripts de configuración y un código correcto. Partiendo de si eso compila bien o no podrías sacar conclusiones sobre si falta algun paquete devel o similar por instalar o es un error en tu código. --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Sunday 24 August 2008 22:23:50 Raúl Moratalla Guillén escribió:
El Sunday 24 August 2008 21:36:55 Xavier Barnada escribió:
Hola a todos esta es mi primera vez que escribo en esta lista, estoy intentando aprender a programar con interficies graficas y he probado con GTK con Qt i con WxWidgetts,pero tengo problemas con todos al compilar el tipico "hello world" he estado mirando y en los tutoriales que he encontrado he visto que cuando incluyen una libreria lo hace en /gtk/xxx.h o /Qt/xxx.h o /Wx/xxx.h y ademas cuando compilava los programas me decia que no encontrava los archivos.Esto me ha hecho sospechar y he creado las correspondientes carpetas en /usr/include y he volcado en ellas los archivos .h correspondientes, pero aun asi no he conseguido y en lugar de darme los errores de que no encuentra los archivos me da otros por cada archivo .h .Tambien pense que no fuera que no tubiera instalados los paquetes devel correspondientes pero los instale y sigue igual.Para mas detalle estoy usando Open Suse 11.Alguien ha conseguido hacer lo que estoy intenado? Muchas gracias
Hola, ¿por qué no pruebas a generar y compilar un proyecto de Qt o KDE en KDevelop? Automáticamente te generará los scripts de configuración y un código correcto. Partiendo de si eso compila bien o no podrías sacar conclusiones sobre si falta algun paquete devel o similar por instalar o es un error en tu código. --------------------------------------------------------------------- Para dar de baja la suscripcin, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
He probado a hacerlo con Kdevelop, he creado un proyecto de los que vienen
predefinidos de un Hola mundo y ha funcionado , pero a la que le he puesto el
que yo estaba probando ha fallado dandome esto:
"/home/xevi/provas/src/provas.cpp:18: error: 'class QApplication' has no
member named 'setMainWidget'"
El codigo que falla es este:
/****************************************************************
**
** Qt tutorial 1
**
****************************************************************/
#include <./Qt/qapplication.h>
#include <./Qt/qpushbutton.h>
int main( int argc, char **argv )
{
QApplication a( argc, argv );
QPushButton hello( "Hello world!", 0 );
hello.resize( 100, 30 );
a.setMainWidget( &hello );
hello.show();
return a.exec();
}
Y el que ha funcionado es este:
/***************************************************************************
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#include "provas.h"
#include
participants (3)
-
lluis
-
Raúl Moratalla Guillén
-
Xavier Barnada