Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: avesudra en 23 Julio 2012, 01:32 am



Título: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 23 Julio 2012, 01:32 am
¿Cómo compilar la librería Qt estáticamente bajo Windows?
¡Buenas a todos! Pues como se ha preguntado sobre este tema he sacado un poco de tiempo y me he puesto a escribir este tutorial.Ya sé que hay información de sobra pero esta última está actualizada.
Descarga e instalación del compilador.
Bien , para compilar la librería Qt estáticamente bajo Windows debemos descargarnos un compilador(no es necesario si ya lo tenemos), en mi caso explicaré esto para hacerlo con MinGW , la librería en su versión 4.8.2 y configurarla en el IDE Qt Creator. Primero de todo nos descargamos la última versión del instalador de MinGW-get-inst de aquí http://sourceforge.net/projects/mingw/ y la instalamos siguiendo los siguientes pasos:


Paso 1:                                                                                                                    
(http://img708.imageshack.us/img708/1192/paso1e.png)
Paso 2:    
(http://img341.imageshack.us/img341/493/paso2fd.png)
Paso 3:                                                                                                                    
(http://img834.imageshack.us/img834/2715/paso3o.png)
Paso 4:    
(http://img707.imageshack.us/img707/2305/paso4v.png)
Paso 5:                                                                                                                    
(http://img835.imageshack.us/img835/951/paso5o.png)
Paso 6:
   
(http://img21.imageshack.us/img21/9831/paso6g.png)
Paso 7:                                                                                                                      
(http://img407.imageshack.us/img407/4329/paso7y.png)
Paso 8:  
(http://img834.imageshack.us/img834/1676/paso8.png)

Seguidamente cuando lo instalemos debemos configurar el path en las variables de entorno , en el caso de Windows 7 , en Inicio->Equipo y hacemos clic derecho sobre él y pinchamos en propiedades , seguidamente en Configuración avanzada del sistema y después en Variables de entorno y editamos la variable path agregando al final si no has cambiado el directorio de instalación esto C:\MinGW\bin;
 Dejo unas imágenes para el que no lo encuentre:

Paso 1:          
(http://img856.imageshack.us/img856/2825/paso11.png)
Paso 2:      
(http://img267.imageshack.us/img267/8995/paso12.png)
Paso 3:                                                                                               Paso 4:    
(http://img692.imageshack.us/img692/5374/paso13h.png)(http://img171.imageshack.us/img171/7812/paso14.png)
Paso 5:
(http://img69.imageshack.us/img69/1317/paso15.png)
Compilando la librería Qt estáticamente.
Una vez hecho esto nos descargamos el código fuentede la librería Qt  desde http://qt.nokia.com/downloads y nos descargamos la última versión . Una vez descargada la descomprimimos en un lugar ACCESIBLE , es decir , que no contenga espacios ni letras raras o con tildes , el mejor sitio para evitar líos es C:\
Una vez hecho eso vamos  a Inicio -> Todos los programas -> Accesorios -> cmd.exe y clicamos en este último, en la ventana negra que nos sale debemos ir hasta el directorio en el que tenemos el código fuente descomprimido , dejo unas imágenes para que se os haga más sencillo:

El comando configure usado es este:  
configure.exe -platform win32-g++  -static -release -nomake example -nomake demos


(http://img151.imageshack.us/img151/2497/paso21.png)

Pulsamos enter y esperamos que termine. Una vez terminado ejecutamos este comando:
 mingw32-make

(http://img696.imageshack.us/img696/272/paso22.png)
Pulsamos enter y esperamos a que termine.(Esto en una máquina virtual se ha llevado dos horas y cinco minutos).Lo que deberíamos obtener cuando terminase es esto:

(http://img171.imageshack.us/img171/4053/paso23.png)
Instalando Qt Creator
Bien, ya tenemos la librería compilada estáticamente , el compilador y ¿que nos falta? el IDE ... nos descargamos Qt Creator para Windows desde aquí(está casi abajo del todo) http://qt.nokia.com/downloads y lo instalamos:
Paso 1:    
(http://img256.imageshack.us/img256/2795/paso31.png)
Paso 2:  
(http://img16.imageshack.us/img16/985/paso32.png)
Paso 3:  
(http://img39.imageshack.us/img39/3148/paso33.png)
Paso 4:  
(http://img213.imageshack.us/img213/2524/paso34.png)
Paso 5:  
(http://img215.imageshack.us/img215/5778/paso35.png)
Paso 6:  
(http://img338.imageshack.us/img338/7844/paso36.png)
Configurando Qt Creator.
Ahora tenemos que configurar en el IDE Qt Creator las librerías estáticas y el compilador, lo hacemos así:

Paso 1:
(http://img88.imageshack.us/img88/135/paso41.png)
Paso 2:  
(http://img13.imageshack.us/img13/9536/paso42.png)
Paso 3:  
(http://img23.imageshack.us/img23/8167/paso43.png)

Posibles problemas:
Compila pero hace falta libgcc.*.dll  y mingw.*.dll:

En ese caso buscar el archivo de configuración de qmake en mi caso que usio win32-g++ estaría en C:\qt-everywhere-opensource-src-4.8.2\mkspecs\win32-g++ y buscar el valor QMAKE_LFLAGS, y reescribir lo que hay por esto:

QMAKE_LFLAGS        =   -static -static-libgcc -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc


Y ya está , todo listo , ahora creen un proyecto , compílenlo con la librería estática en modo release y vean el tamaño del ejecutable , veran que es bastante más pesado de lo habitual .Por favor , si hay algo que no esté bien explicado o presente dudas pónganlo , aunque creo que el tutorial es lo bastante gráfico y sencillo como para que no sea entendible ¡Un saludo a todos!
PD : overxfl0w13 lo prometido es deuda ;)


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.EN CONSTRUCCIÓN
Publicado por: DickGumshoe en 23 Julio 2012, 01:48 am
Como siempre, ¡muchísimas gracias por el manual! Seguro que nos servirá a muchos.

Saludos!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.EN CONSTRUCCIÓN
Publicado por: avesudra en 23 Julio 2012, 01:50 am
Como siempre, ¡muchísimas gracias por el manual! Seguro que nos servirá a muchos.

Saludos!
Gracias aunque todavía tengo que terminarlo porque es que la librería lleva una hora y media compilándose :xD Ya está listo , a ver si le mejoro la apariencia gráfica de las últimas capturas de pantalla.
¡Un saludo!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: overxfl0w13 en 23 Julio 2012, 14:19 pm
jaja BUENÍSIMO AVESUDRA! voy a hacerlo con las próximos proyectos, facilitará mucho las cosas :).

Chincheta a esto YA!  ;-)

EDIT: No sé porque pero ahora no me deja compilar, me lanza 31334 errores y el tiempo de compilación aumenta considerablemente xD


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 23 Julio 2012, 16:20 pm
jaja BUENÍSIMO AVESUDRA! voy a hacerlo con las próximos proyectos, facilitará mucho las cosas :).
EDIT: No sé porque pero ahora no me deja compilar, me lanza 31334 errores y el tiempo de compilación aumenta considerablemente xD
Gracias overxfl0w13 , es un coñazo compilar la librería ... De hecho me daba errores , pero al final decidí compilarla en una máquina virtual.
EDIT: Todo solucionado lo de tu librería  :)
Chincheta a esto YA!  ;-)
Sería todo un honor  :)
¡Un saludo!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: anonimo12121 en 23 Julio 2012, 22:09 pm
Chinchetazo YAAA CURRARISIMO!!!!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 23 Julio 2012, 22:15 pm
Chinchetazo YAAA CURRARISIMO!!!!
¡Muchísimas gracias Xafi! En cuanto a lo de la chincheta como le he dicho a overxfl0w13 sería todo un honor  :)


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: overxfl0w13 en 24 Julio 2012, 00:43 am
Ahora si que no necesita nada, perfecto :D


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 24 Julio 2012, 00:57 am
Ahora si que no necesita nada, perfecto :D
Vale , entonces ya no hay más problemas con el post :D


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: anonimo12121 en 10 Octubre 2012, 12:31 pm
Subiendo!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: chinoman1993 en 10 Octubre 2012, 22:07 pm
Hola, podrias hacer un tutorial de como hacer la configuración en Visual Studio 2010, porfavor


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 10 Octubre 2012, 22:31 pm
Hola, podrias hacer un tutorial de como hacer la configuración en Visual Studio 2010, porfavor
No sé como hacerlo , de todas maneras aunque supiese no dispongo de tiempo para dedicarle , busca en internet(en inglés sobre todo)
:
http://www.holoborodko.com/pavel/2011/02/01/how-to-compile-qt-4-7-with-visual-studio-2010/
De todas maneras , te lo digo ya por haberlo visto , el IDE Qt Creator es más que impresionante.

Xafi , miles de gracias , ¡eres grande!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: x64core en 10 Octubre 2012, 23:37 pm
por cierto, vaya moustro el que tienes  ::)


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: MeCraniDOS en 11 Noviembre 2012, 14:14 pm
Hice todo lo que dijiste y funciono a la perfección, el unico fallo que me da es que al compilar me tira el error de que me faltan librerias QXmpp.

Uno de los errores es este:  :(
Citar
QXmppConfiguration.h: No such file or directory
c:\Qt\4.8.3\include\qxmpp\QXmppClient.h

Saludos y Gracias.


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: leosansan en 12 Noviembre 2012, 21:22 pm
Citar
Me apunto a la idea:
Chinchetazo YAAAAAAAAAAAAAAAAAAAAAAAA !!!!!!!!!!!!!!!!!



Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 13 Noviembre 2012, 01:10 am
por cierto, vaya moustro el que tienes  ::)
Sí la verdad es que bastante bueno :)
Hice todo lo que dijiste y funciono a la perfección, el unico fallo que me da es que al compilar me tira el error de que me faltan librerias QXmpp.

Uno de los errores es este:  :(
Saludos y Gracias.
Ese error que dices te lo da al compilar un proyecto , ¿o al compilar las librerías?

¡Muchísimas Gracias!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: MeCraniDOS en 14 Noviembre 2012, 18:19 pm
Nono, el error me sale cuando intento compilar el proyecto, me dice que me faltan todas las librerías QXmpp, del resto de código no me sale ningún error, y bueno, otro de los fallos que me da, es en este paso:

Citar
Pulsamos enter y esperamos que termine. Una vez terminado ejecutamos este comando:
 mingw32-make

Me sale un error ahí, (uso otra versión que la tuya, la instalación es en interfaz gráfica, y luego la actualización si que me sale igual que a ti, pero cuando llega al punto del mingw32-make, me tira error) pero no se a que puede deberse, en cuanto tenga un ratito te paso el trozo del error, a ver si sabrías solucionarmelo.  :huh:  :huh:

Saludos


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 14 Noviembre 2012, 23:17 pm
Claro MeCraniDos , si te sale un error en la compilación de la librería no la compilas del todo , entonces al ponerla en el qt creator no te compila bien porque te faltan cosas al linkear. Tienes que tener cuidado con las librerías , enterarte de con qué versión de compilador están testeadas esas versiones de la librería para que compile bien. Yo siempre por experiencia , aconsejo también que para compilar cualquier librería la pongas en C:\ , así el compilador no se lía.No sé a que versión te refieres , si pudieses pasarme un enlace o algo. No te desesperes , compilar librerías es un coñazo, incluso yo la última vez que compilé estas tuve problemas y seguí mi tutorial.

A ver si estas navidades me pongo a actualizar un poco esto y aclarar algunas cosas.

¡Un saludo!


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: Lauta en 19 Abril 2013, 21:28 pm
Buenas, tengo un problema cuando intento configurar qt, me sale el siguiente mensaje:

C:\qt>configure -platform win32-g++  -static -release -nomake example -nomake de
mos
/c/qt/C:/qt/qtbase/configure not found. Did you forget to run "init-repository"?
 at C:\qt\configure line 86.

Estoy hace unos días intentando lograr que QT me genere un .exe no dependiente del framework y me estoy volviendo loco ya, acepto cualquier ayuda.

(estaba usando la versión que se instala sola del Qt SDK)


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: Borito30 en 19 Agosto 2016, 14:37 pm
podrian actualizar este tutorial yo instalo qcreator ultima version y arranco pero no me reconoce la libreria xmpp. Porque es importante compilar las librerias estaticamente???


Título: Re: [TUTORIAL]Compilar la librería Qt estáticamente bajo Windows.
Publicado por: avesudra en 20 Agosto 2016, 01:06 am
podrian actualizar este tutorial yo instalo qcreator ultima version y arranco pero no me reconoce la libreria xmpp. Porque es importante compilar las librerias estaticamente???

Hola, actualmente no dispongo de tiempo para actualizarlo, pero seguramente en la página Qt habrá muchísima información en inglés para hacerlo.

Un saludo.