Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Spanish
  4. Problema al compilar qxmpp
QtWS25 Last Chance

Problema al compilar qxmpp

Scheduled Pinned Locked Moved Spanish
14 Posts 2 Posters 3.7k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    misa3l
    wrote on last edited by
    #1

    Buenas.. ya hace unas estoy tratando de compilar QXMPP.. de momento lo e logrado compilar.. me crea un archivo llamado libqxmpp0.a qxmpp0.dll lo instalo en el sistema y todo ok.. pero.. funciona solo con la version que no genera los .EXE static.. y funciona cuando le agrego los dll faltantes.. :(

    Imagen: http://picpaste.com/111111-M6h1xfZN.png

    Ahora.. e compilado qt para que me genere los EXE staticos sin tener que estar agregando las dll.. lo cual me genera un archivo .exe de 13 MB aprox. pero.. al tratar de compilar el QXMPP me lanza error.. que falta QSSLSocket y otro montón de cosas mas.. Me gustaría saber si hay alguna forma de compilar QT statico y que me genere todos los dll para evitar este tipo de problemas.. ya e compilado cientos de veces y aun sigo con lo mismo..

    Saludos..

    1 Reply Last reply
    0
    • H Offline
      H Offline
      hipersayan_x
      wrote on last edited by
      #2

      ¿De que forma estas compilando QXmpp?¿Con que opciones?

      1 Reply Last reply
      0
      • M Offline
        M Offline
        misa3l
        wrote on last edited by
        #3

        de la forma normal.. abro el proyecto con qt y le doy build.. y también e probado con qmake y luego make y make install .. de igual forma tambien le e pasado los parámetros correspondientes para que compile QXMPP statico pero todo sigue igual.. te dejo la url del proyecto para que vos proba y veais de lo que te hablo..

        https://github.com/qxmpp-project/qxmpp

        si logras compilar un proyecto con qxmpp sin depender de las dll me salvas la vida XD

        Salu2.

        1 Reply Last reply
        0
        • H Offline
          H Offline
          hipersayan_x
          wrote on last edited by
          #4

          ¿Probaste pasandole la opción QXMPP_LIBRARY_TYPE=staticlib?

          @i686-w64-mingw32-qmake-qt5 PREFIX=/usr QXMPP_LIBRARY_TYPE=staticlib QXMPP_USE_SPEEX=1 QXMPP_USE_VPX=1 QXMPP_USE_THEORA=1@

          Probado de Arch Linux y compila sin problemas.

          1 Reply Last reply
          0
          • M Offline
            M Offline
            misa3l
            wrote on last edited by
            #5

            la verdad si e probado. en linux no tengo idea, pero en windows me da problema. :S me crea dll y un .a si teneis chace proba en window.

            1 Reply Last reply
            0
            • H Offline
              H Offline
              hipersayan_x
              wrote on last edited by
              #6

              El .a es la librería estática, ¿De que tamaño es el archivo? a mí me da unos 40Mb con Vorbis, theora y Vpx incluidos. ¿Probaste linkearlo en tu programa?

              1 Reply Last reply
              0
              • M Offline
                M Offline
                misa3l
                wrote on last edited by
                #7

                si me da un aproximado de 9 MB.. de que forma tu linkeas el .a al programa? yo lo e linkeado andole click secundario agregar libreria etc etc.. agrego los headers y todo eso.. el programa funciona.. pero da problemas de dll.. q le hace falta la libreria dll de xmpp.. y para que funcione tengo q agregarlas a la carpeta :S cosa q no deberia de hacer ya que al compilar deberia de tomar la libreria y generar el .exe listo sin tener q tener q agregar dll para que funcione. :(

                1 Reply Last reply
                0
                • H Offline
                  H Offline
                  hipersayan_x
                  wrote on last edited by
                  #8

                  bq. de que forma tu linkeas el .a al programa?

                  Agregando

                  @LIBS += -L/ruta -lqxmpp@

                  al archivo .pro.

                  bq. el programa funciona.. pero da problemas de dll

                  ¿Podrías copiar aquí los errores que te devuelve el compilador?

                  1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    misa3l
                    wrote on last edited by
                    #9

                    Disculpa el retraso amigo me encontraba fuera de casa.. por supuesto te dejo las imágenes con los errores y detallan dote todo..

                    Esta es el error al compilar usando QT Statico (Compilado)

                    !http://picpaste.com/1-ZijFvIMW.png

                    Esta el la ruta del qmake estatico (Compilado)

                    !http://picpaste.com/2-1NY30HfD.png

                    Esta son las Carpetas (la normal al instalar QT) y la (Estatica)

                    !http://picpaste.com/3-ftnyhxQ9.png

                    Creo.. que al parecer dentro de la carpeta de C:\Qt\Qt5.2.1_static\bin
                    Faltan muchos DLL.. Creo que es por eso que no logra compilarlo

                    ya que la carpeta original de QT C:\Qt\Qt5.2.1\5.2.1\mingw48_32\bin
                    tiene todas sus DLL .

                    Esta imagen es de QT statico (Compilado) y dentro no se observan DLL

                    !http://picpaste.com/4-wTyMNIG1.png

                    Esta otra imagen Pertenece a la carpeta original de QT sin compila

                    !http://picpaste.com/5-ZHlSlD2Q.png

                    Ahora.. la forma en que compile QT de forma esta tica fue la siguiente:

                    Edite el qmake.conf y agrege

                    @DEFINES += QT_STATIC_BUILD@
                    @QMAKE_LFLAGS = -static -static-libgcc@

                    Agrege las iguientes rutas al path de windows:

                    @PATH=C:\Qt\Qt5.2.1\5.2.1\mingw48_32\bin;C:\Qt\Qt5.2.1\Tools\mingw48_32\bin;C:\Program Files\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\Python33;C:\strawberry\perl\bin;C:\Ruby200-x64\bin;@

                    Luego la forma en que realize el configure fue el siguiente:

                    @configure -static -release -confirm-license -opengl desktop -opensource -platform win32-g++ -prefix C:\Qt\Qt5.2.1_static -nomake examples -nomake tests@

                    luego enlace el qmake statico..

                    y sigo sin poder compilar QXMPP con el QT statico

                    Compile el QXMPP con QT sin usar static y creo el libqxmpp.a

                    ahora al linkear un app para realizar la prueba en (ESTATICO) resulta que me da error.. Te adjunto las 2 imagenes..

                    http://picpaste.com/err1-hXvg817e.png

                    http://picpaste.com/err2-WGieVkQJ.png

                    Alli detalle todos los errores que tengo..

                    Otra cosa a resaltar es que lo compile de forma normal sin pasarles parametros al QXMPP y creo el .a y .dll
                    lo probé en la versión no estática de QT y funciono de maravilla.. PEro el .exe creado es de 32K y depende de muchas DLL... cosa que no quiero.. deberia de tener un EXE completo..

                    http://picpaste.com/111-HxAKdpst.png

                    Ahora probé de la misma forma pero con QT estático y me da un return :S

                    http://picpaste.com/22222-XmVCFzcu.png

                    en verdad e probado de todo.. y sigo sin resolver este enigma..

                    Salu2.

                    1 Reply Last reply
                    0
                    • H Offline
                      H Offline
                      hipersayan_x
                      wrote on last edited by
                      #10

                      Vamos por partes.

                      [quote author="misa3l" date="1422564943"]
                      Esta es el error al compilar usando QT Statico (Compilado)

                      !http://picpaste.com/1-ZijFvIMW.png
                      [/quote]

                      Tenes que incluir:

                      @QT += network@

                      en tu archivo .pro.

                      [quote author="misa3l" date="1422564943"]
                      Creo.. que al parecer dentro de la carpeta de C:\Qt\Qt5.2.1_static\bin
                      Faltan muchos DLL.. Creo que es por eso que no logra compilarlo

                      ya que la carpeta original de QT C:\Qt\Qt5.2.1\5.2.1\mingw48_32\bin
                      tiene todas sus DLL .
                      [/quote]

                      No, aquí esta bien, pues eso es lo que quieres, una compilación sin dependencias con DLLs.

                      [quote author="misa3l" date="1422564943"]
                      Compile el QXMPP con QT sin usar static y creo el libqxmpp.a

                      ahora al linkear un app para realizar la prueba en (ESTATICO) resulta que me da error.. Te adjunto las 2 imagenes..

                      http://picpaste.com/err1-hXvg817e.png

                      http://picpaste.com/err2-WGieVkQJ.png
                      [/quote]

                      ¿el archivo libqxmpp.a esta dentro de la ruta que indica LIB?

                      Disculpa que no te pueda dar una ayuda mas específica, pero para ayudarte tendría que levantar la VM, compilar Qt estático + QXmpp, y todavía tendría que armar algún ejemplo para probar, es demasiado trabajo, y estoy un tanto ocupado en estos momentos :s

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        misa3l
                        wrote on last edited by
                        #11

                        No hay problema amigo poco a poco se ayuda. Me urge terminar esto ya que mi tesis de universidad sera creando un proyecto con la tecnología xmpp para comunicación, pero sino logro compilar y hacer funcionar QXMPP con QT Statico tendré q inventarme algo XD.

                        en mi .pro tengo

                        @QT += core network xml
                        QT -= gui@

                        ya que qxmpp usa network y xml .

                        ahora lo de la ruta del .a si amigo esta en esa ruta, al instalarlo se guarda dentro de la carpeta de lib del mingw48_32 y los header en includes.

                        en C:\Qt\Qt5.2.1\5.2.1\mingw48_32\lib

                        esta libqxmpp0.a y qxmpp0.dll

                        Ando casi loco con esto :/

                        salu2.

                        1 Reply Last reply
                        0
                        • H Offline
                          H Offline
                          hipersayan_x
                          wrote on last edited by
                          #12

                          [quote author="misa3l" date="1422641054"]Me urge terminar esto ya que mi tesis de universidad sera creando un proyecto con la tecnología xmpp para comunicación, pero sino logro compilar y hacer funcionar QXMPP con QT Statico tendré q inventarme algo XD.
                          [/quote]

                          No desesperes, es un proyecto interesante, me consta que hay otras personas trabajando en proyectos de fin de carrera parecidos. Yo por mi parte planeo usar QXmpp para uno de mis proyectos, así que algo sé del tema.

                          En última instancia puedes probar con compilación cruzada :p

                          [quote author="misa3l" date="1422641054"]
                          en C:\Qt\Qt5.2.1\5.2.1\mingw48_32\lib

                          esta libqxmpp0.a y qxmpp0.dll
                          [/quote]

                          Pará, si te lo guarda como libqxmpp0.a entonces deberías probar linkeando como -lqxmpp0.

                          1 Reply Last reply
                          0
                          • M Offline
                            M Offline
                            misa3l
                            wrote on last edited by
                            #13

                            Amigo ya lo e probado xD

                            @win32:CONFIG(release): LIBS += -LC:/Qt/Qt5.2.1/5.2.1/mingw48_32/lib/ -lqxmpp0@

                            y mismo problema..

                            1 Reply Last reply
                            0
                            • M Offline
                              M Offline
                              misa3l
                              wrote on last edited by
                              #14

                              sin resultado.. :(

                              1 Reply Last reply
                              0

                              • Login

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Categories
                              • Recent
                              • Tags
                              • Popular
                              • Users
                              • Groups
                              • Search
                              • Get Qt Extensions
                              • Unsolved