Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Portuguese
  4. Compilação Estática (Static build) Qt 5.0.2 MinGW

Compilação Estática (Static build) Qt 5.0.2 MinGW

Scheduled Pinned Locked Moved Portuguese
32 Posts 5 Posters 21.2k Views 1 Watching
  • 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.
  • F Offline
    F Offline
    Filippe
    wrote on last edited by
    #17

    Antes do passo 3:
    @
    D:\qt\5.0.2\Src\qtbase>qmake -v
    QMake version 3.0
    Using Qt version 5.0.2 in D:\qt\5.0.2\mingw47_32\lib@

    @D:\qt\5.0.2\Src\qtbase>qmake -query
    QT_SYSROOT:
    QT_INSTALL_PREFIX:D:\qt\5.0.2\mingw47_32
    QT_INSTALL_ARCHDATA:D:\qt\5.0.2\mingw47_32
    QT_INSTALL_DATA:D:\qt\5.0.2\mingw47_32
    QT_INSTALL_DOCS:D:\qt\5.0.2\mingw47_32\doc
    QT_INSTALL_HEADERS:D:\qt\5.0.2\mingw47_32\include
    QT_INSTALL_LIBS:D:\qt\5.0.2\mingw47_32\lib
    QT_INSTALL_LIBEXECS:D:\qt\5.0.2\mingw47_32\libexec
    QT_INSTALL_BINS:D:\qt\5.0.2\mingw47_32\bin
    QT_INSTALL_TESTS:D:\qt\5.0.2\mingw47_32\tests
    QT_INSTALL_PLUGINS:D:\qt\5.0.2\mingw47_32\plugins
    QT_INSTALL_IMPORTS:D:\qt\5.0.2\mingw47_32\imports
    QT_INSTALL_QML:D:\qt\5.0.2\mingw47_32\qml
    QT_INSTALL_TRANSLATIONS:D:\qt\5.0.2\mingw47_32\translations
    QT_INSTALL_CONFIGURATION:
    QT_INSTALL_EXAMPLES:D:\qt\5.0.2\mingw47_32\examples
    QT_INSTALL_DEMOS:D:\qt\5.0.2\mingw47_32\examples
    QT_HOST_PREFIX:D:\qt\5.0.2\mingw47_32
    QT_HOST_DATA:D:\qt\5.0.2\mingw47_32
    QT_HOST_BINS:D:\qt\5.0.2\mingw47_32\bin
    QMAKE_SPEC:win32-g++
    QMAKE_XSPEC:win32-g++
    QMAKE_VERSION:3.0
    QT_VERSION:5.0.2@

    Depois do passo 3:

    @D:\qt\5.0.2\Src\qtbase>qmake -v
    QMake version 3.0
    Using Qt version 5.0.2 in D:\qt\5.0.2\mingw47_32\lib@

    @D:\qt\5.0.2\Src\qtbase>qmake -query
    QT_SYSROOT:
    QT_INSTALL_PREFIX:D:\qt\5.0.2\mingw47_32
    QT_INSTALL_ARCHDATA:D:\qt\5.0.2\mingw47_32
    QT_INSTALL_DATA:D:\qt\5.0.2\mingw47_32
    QT_INSTALL_DOCS:D:\qt\5.0.2\mingw47_32\doc
    QT_INSTALL_HEADERS:D:\qt\5.0.2\mingw47_32\include
    QT_INSTALL_LIBS:D:\qt\5.0.2\mingw47_32\lib
    QT_INSTALL_LIBEXECS:D:\qt\5.0.2\mingw47_32\libexec
    QT_INSTALL_BINS:D:\qt\5.0.2\mingw47_32\bin
    QT_INSTALL_TESTS:D:\qt\5.0.2\mingw47_32\tests
    QT_INSTALL_PLUGINS:D:\qt\5.0.2\mingw47_32\plugins
    QT_INSTALL_IMPORTS:D:\qt\5.0.2\mingw47_32\imports
    QT_INSTALL_QML:D:\qt\5.0.2\mingw47_32\qml
    QT_INSTALL_TRANSLATIONS:D:\qt\5.0.2\mingw47_32\translations
    QT_INSTALL_CONFIGURATION:
    QT_INSTALL_EXAMPLES:D:\qt\5.0.2\mingw47_32\examples
    QT_INSTALL_DEMOS:D:\qt\5.0.2\mingw47_32\examples
    QT_HOST_PREFIX:D:\qt\5.0.2\mingw47_32
    QT_HOST_DATA:D:\qt\5.0.2\mingw47_32
    QT_HOST_BINS:D:\qt\5.0.2\mingw47_32\bin
    QMAKE_SPEC:win32-g++
    QMAKE_XSPEC:win32-g++
    QMAKE_VERSION:3.0
    QT_VERSION:5.0.2@

    1 Reply Last reply
    0
    • F Offline
      F Offline
      Filippe
      wrote on last edited by
      #18

      Não funcionou.

      1 Reply Last reply
      0
      • J Offline
        J Offline
        josuegomes
        wrote on last edited by
        #19

        bq. mas para tentar esclarecer eu instalei o Qt no meu PC com esse executável:
        “qt-windows-opensource-5.0.2-mingw47_32-x86-offline.exe”

        Estes pacotes não têm as bibliotecas estáticas. Você teria que compilar a Qt toda a partir do código fonte e gerar as suas próprias bibliotecas estáticas.

        1 Reply Last reply
        0
        • F Offline
          F Offline
          Filippe
          wrote on last edited by
          #20

          Ok, vou tentar compilar o Qt completo.

          Você sabe de algum tutorial que ensina a compilar o Qt 5.0.2 completo?

          1 Reply Last reply
          0
          • J Offline
            J Offline
            josuegomes
            wrote on last edited by
            #21

            Acho que não existe um tutorial perfeito. Eu consegui compilar juntando informações aqui e ali e fazendo muitas tentativas.
            Um bom começo é este tutorial:

            http://silmor.de/qtstuff.qt5mingw.php

            Se tiver alguma dúvida poste aqui.

            1 Reply Last reply
            0
            • F Offline
              F Offline
              Filippe
              wrote on last edited by
              #22

              Ok, vou seguir esse tutorial e respondo assim que tiver uma dúvida ou se tiver conseguido concluir.
              Obrigado.

              1 Reply Last reply
              0
              • F Offline
                F Offline
                Filippe
                wrote on last edited by
                #23

                Comecei a entender o processo.

                Já construí o ICU, porém na hora de usar o MSYS para construir o openssl-1.0.1e:

                @$ make depend && make && make install@

                dá esse erro:

                bq. libcrypto.a(bn_gf2m.o):bn_gf2m.c:(.text+0x8db): undefined reference to 'bn_GF2m_mul_2x2'
                collect2.exe: error: Id returned 1 exit status
                make[4]: *** [link_a.cygwin] Error 1
                make[4]: Leaving directory '/home/filippe/openssl-1.0.1e'
                make[3]: *** [do_cygwin-shared] Error 2
                make[3]: Leaving directory '/home/filippe/openssl-1.0.1e'
                make[2]: *** [libcrypto.dll.a] Error 2
                make[2]: Leaving directory '/home/filippe/openssl-1.0.1e'
                make[1]: *** [shared] Error 2
                make[1]: Leaving directory '/home/filippe/openssl-1.0.1e/crypto'
                make[4]: *** [build_crypto] Error 1

                Existe, para outro tipo de erro, uma recomendação dada:

                bq. Use MSYS perl
                or change crypto/perlasm/x86_64-xlate.pl as mentioned in the e-mail thread.

                Mas não entendi como usar o "MSYS perl", pois já tenho a localização da pasta do perl no meu PATH do Windows.

                Existem uma forma de resolver esse problema?

                Obs: Estou fazendo essa parte: http://qt-project.org/wiki/Compiling-OpenSSL-with-MinGW

                1 Reply Last reply
                0
                • J Offline
                  J Offline
                  josuegomes
                  wrote on last edited by
                  #24

                  No prompt do MSYS execute:

                  perl -V

                  e coloque o resultado aqui

                  1 Reply Last reply
                  0
                  • J Offline
                    J Offline
                    josuegomes
                    wrote on last edited by
                    #25

                    A maneira como eu compilo o OpenSSL no prompt do MSYS:

                    ./Configure mingw
                    make

                    Só isso é suficiente.

                    1 Reply Last reply
                    0
                    • T Offline
                      T Offline
                      tamireswirth
                      wrote on last edited by
                      #26

                      Boa tarde.

                      A partir de hoje de manhã meu computador começou a apresentar o seguinte erro:

                      bq. "O programa não pode ser iniciado porque está faltando qt5core.dll no seu computador. Tente reinstalá-lo para resolver esse problema."

                      Através das buscas, achei esse fórum e gostaria de saber como posso solucionar isso.
                      Obrigada.

                      1 Reply Last reply
                      0
                      • J Offline
                        J Offline
                        josuegomes
                        wrote on last edited by
                        #27

                        [quote author="tamireswirth" date="1379967831"]Boa tarde.

                        A partir de hoje de manhã meu computador começou a apresentar o seguinte erro:

                        bq. "O programa não pode ser iniciado porque está faltando qt5core.dll no seu computador. Tente reinstalá-lo para resolver esse problema."

                        Através das buscas, achei esse fórum e gostaria de saber como posso solucionar isso.
                        Obrigada.[/quote]

                        Tamires,

                        Este fórum é para desenvolvedores que usam a biblioteca Qt. O seu problema é outro. Entre em contato com o fabricante do programa que você está tentando iniciar e peça ajuda.

                        1 Reply Last reply
                        0
                        • F Offline
                          F Offline
                          Filippe
                          wrote on last edited by
                          #28

                          [quote author="josuegomes" date="1379965936"]No prompt do MSYS execute:

                          perl -V

                          e coloque o resultado aqui
                          [/quote]

                          Como você pediu, aí está o resultado:

                          @$ perl -V
                          Set up gcc environment - gcc.exe (rev5, Built by MinGW-W64 project) 4.8.1
                          Summary of my perl5 (revision 5 version 16 subversion 3) configuration:

                          Platform:
                          osname=MSWin32, osvers=5.2, archname=MSWin32-x64-multi-thread
                          uname=''
                          config_args='undef'
                          hint=recommended, useposix=true, d_sigaction=undef
                          useithreads=define, usemultiplicity=define
                          useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
                          use64bitint=define, use64bitall=undef, uselongdouble=undef
                          usemymalloc=n, bincompat5005=undef
                          Compiler:
                          cc='d:\QtStatic\MINGW-~1\X64-48~1.1-W\mingw64\bin\gcc.exe', ccflags ='-DNDEB
                          UG -DWIN32 -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVATIVE -DPERL_TEXTMODE_SCRIPTS
                          -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D
                          HASATTRIBUTE -fno-strict-aliasing -mms-bitfields',
                          optimize='-O2',
                          cppflags='-DWIN32'
                          ccversion='', gccversion='gcc.exe (rev5, Built by MinGW-W64 project) 4.8.1',
                          gccosandvers=''
                          intsize=4, longsize=4, ptrsize=8, doublesize=8, byteorder=12345678
                          d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8
                          ivtype='__int64', ivsize=8, nvtype='double', nvsize=8, Off_t='__int64', lsee
                          ksize=8
                          alignbytes=8, prototype=define
                          Linker and Libraries:
                          ld='d:\QtStatic\MINGW-~1\X64-48~1.1-W\mingw64\bin\g++.exe', ldflags ='-L"D:
                          QtStatic\Perl64\lib\CORE"'
                          libpth=\lib
                          libs=-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32
                          -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -
                          lodbccp32 -lcomctl32 -lmsvcrt
                          perllibs=-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshel
                          l32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc
                          32 -lodbccp32 -lcomctl32 -lmsvcrt
                          libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl516.lib
                          gnulibc_version=''
                          Dynamic Linking:
                          dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
                          cccdlflags=' ', lddlflags='-mdll -L"D:\QtStatic\Perl64\lib\CORE"'

                          Characteristics of this binary (from libperl):
                          Compile-time options: HAS_TIMES HAVE_INTERP_INTERN MULTIPLICITY
                          PERLIO_LAYERS PERL_DONT_CREATE_GVSV
                          PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS
                          PERL_MALLOC_WRAP PERL_PRESERVE_IVUV PL_OP_SLAB_ALLOC
                          USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
                          USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE
                          USE_LOCALE_NUMERIC USE_PERLIO USE_PERL_ATOF
                          USE_SITECUSTOMIZE
                          Locally applied patches:
                          ActivePerl Build 1603 [296746]
                          Built under MSWin32
                          Compiled at Mar 13 2013 13:31:10
                          @INC:
                          d:/QtStatic/Tools/Perl64/site/lib
                          d:/QtStatic/Tools/Perl64/lib@

                          1 Reply Last reply
                          0
                          • F Offline
                            F Offline
                            Filippe
                            wrote on last edited by
                            #29

                            [quote author="josuegomes" date="1379966076"]A maneira como eu compilo o OpenSSL no prompt do MSYS:

                            ./Configure mingw
                            make

                            Só isso é suficiente.[/quote]

                            Fiz com esse procedimentos que você falou. O resultado foi esse:

                            @$ make
                            making all in crypto...
                            make[1]: Entering directory /home/filippe/openssl-1.0.1e/crypto' ( echo "#ifndef MK1MF_BUILD"; \ echo ' /* auto-generated by crypto/Makefile for crypto/cversion.c * \ echo ' #define CFLAGS "gcc -DOPENSSL_THREADS -D_MT -DDSO_WIN32 -DL_ AN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall -DOPENSS _ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_G -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAE M -DWHIRLPOOL_ASM -DGHASH_ASM"'; \ echo ' #define PLATFORM "mingw"'; \ echo " #define DATE \"LC_ALL=C LC_TIME=C date\""; \ echo '#endif' ) >buildinf.h gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_MT -DDSO_WIN32 -DL_ENDIAN -D 2_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall -DOPENSSL_BN_ASM_ _WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA M -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DW POOL_ASM -DGHASH_ASM -c -o cryptlib.o cryptlib.c cryptlib.c:1:0: error: CPU you selected does not support x86-64 instruction /* crypto/cryptlib.c */ ^ cryptlib.c:1:0: error: CPU you selected does not support x86-64 instruction make[1]: *** [cryptlib.o] Error 1 make[1]: Leaving directory /home/filippe/openssl-1.0.1e/crypto'
                            make: *** [build_crypto] Error 1@

                            1 Reply Last reply
                            0
                            • J Offline
                              J Offline
                              josuegomes
                              wrote on last edited by
                              #30

                              Agora eu vi que você está usando o MinGW-64. Como você está chamando o Configure? Qual a saída desse comando?

                              1 Reply Last reply
                              0
                              • F Offline
                                F Offline
                                Filippe
                                wrote on last edited by
                                #31

                                [quote author="josuegomes" date="1380024758"]Agora eu vi que você está usando o MinGW-64. Como você está chamando o Configure? Qual a saída desse comando?
                                [/quote]

                                Para esse passo estou utilizando:
                                Comando:

                                @$ ./Configure --prefix=$PWD/dist no-idea no-mdc2 no-rc5 shared mingw64@

                                Saída:

                                @[...]
                                Since you've disabled or enabled at least one algorithm, you need to do
                                the following before building:

                                    make depend
                                

                                Configured for mingw64.@

                                Comando:

                                @$ make depend && make && make install@

                                Saída:

                                @[...]
                                make[2]: Entering directory /home/filippe/openssl-1.0.1e' [ -z "" ] || gcc -D_WINDLL -DOPENSSL_PIC -DOPENSSL_THREADS -D_MT -DDSO_WIN32 -DL _ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM - DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL _ASM -DGHASH_ASM -Iinclude \ -DFINGERPRINT_PREMAIN_DSO_LOAD -o fips_premain_dso.exe \ fips_premain.c fipscanister.o \ libcrypto.a -lws2_32 -lgdi32 -lcrypt32 make[3]: Entering directory /home/filippe/openssl-1.0.1e'
                                make[4]: Entering directory /home/filippe/openssl-1.0.1e' libcrypto.a(bn_gf2m.o):bn_gf2m.c:(.text+0x8db): undefined reference to bn_GF2m_
                                mul_2x2'
                                collect2.exe: error: ld returned 1 exit status
                                make[4]: *** [link_a.cygwin] Error 1
                                make[4]: Leaving directory /home/filippe/openssl-1.0.1e' make[3]: *** [do_cygwin-shared] Error 2 make[3]: Leaving directory /home/filippe/openssl-1.0.1e'
                                make[2]: *** [libcrypto.dll.a] Error 2
                                make[2]: Leaving directory /home/filippe/openssl-1.0.1e' make[1]: *** [shared] Error 2 make[1]: Leaving directory /home/filippe/openssl-1.0.1e/crypto'
                                make: *** [build_crypto] Error 1@

                                1 Reply Last reply
                                0
                                • F Offline
                                  F Offline
                                  Filippe
                                  wrote on last edited by
                                  #32

                                  Resolvi o problema que eu citei acima. (Meu sistema não estava num bom estado) Estou compilando no PC do meu irmão.

                                  Porém cheguei numa etapa que não está dando certo.
                                  A etapa é a número 11 do tutorial que você me passou (http://silmor.de/qtstuff.qt5mingw.php)

                                  utilizei esse comando para contruir:

                                  @configure -opensource -prefix F:\QT\mingw\mingw64 -nomake examples -nomake demos -nomake tests -platform win32-g++ -opengl desktop -openssl -I f:\QT\Tools\openssl-1.0.1e\dist\include\openssl -L f:\QT\Tools\openssl-1.0.1e\dist\lib -icu -I f:\QT\Tools\icu\dist\include -L f:\QT\Tools\icu\dist\lib@

                                  deu esse erro:

                                  @‘F:\QT\Qt510\qtbase\configure.exe’ não é reconhecido como um comando interno
                                  ou externo, um programa operável ou um arquivo em lotes.,@

                                  Como você recomenda neste artigo (http://qt-project.org/forums/viewthread/23171), criei um arquivo vazio dentro de "qtbase" chamado ".gitignore"

                                  Então deu esse erro:

                                  @<builtin>: recipe for target 'qfilesystemengine_win.o' failed
                                  mingw32-make: *** [qfilesystemengine_win.o] Error 1@

                                  Não estou utilizando o "jom" nem o "fart" para fazer essa operação, talvez seja isso, mas queria ter certeza que não é outra coisa para utilizá-los.

                                  [editado 9 horas depois]

                                  Obs: não fiz o passo 6 do tutorial, baixei o arquivo, ".tar.gz", pelo site do Qt.

                                  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