Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Behind the Scenes
  3. Wiki Discussion
  4. Qt5 development primer
Forum Update on Monday, May 27th 2025

Qt5 development primer

Scheduled Pinned Locked Moved Wiki Discussion
166 Posts 72 Posters 201.1k 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.
  • P Offline
    P Offline
    Philius
    wrote on 31 Jan 2012, 19:52 last edited by
    #47

    Sorry for editing my messages but the ground is moving under me.

    I rebuilt with "regular" OpenGL and found one more problem:
    qtwebkit-examples-and-demos/examples/browser/cookiejar.cpp is missing "#include <QNetworkCookie>".

    I sent a message to development@qt-project.org so hopefully the patch (along with my patch for qtwebkit) should find their way into GIT soon.

    Other than that, with the approach detailed in my previous post, the build succeeded.

    It took about 4 hours with "make -j 2" on my dual core laptop with both cores running at 1.867 GHz.

    1 Reply Last reply
    0
    • W Offline
      W Offline
      werispaul
      wrote on 3 Feb 2012, 10:10 last edited by
      #48

      I had to use "-prefix CD\qtbase" option as described in the qt5 git readme file, to get through the configure step without errors. By not specifying the prefix, my mkspec (win32-msvc2010), was searched in "qtbase\bin" instead in "qtbase".

      In addition i had to install python, because one of the compilation steps had an python call.

      To init the QT Modules I used "git submodule init" and "git submodule update". Are there any magics behind the perl init-submodule script i'm missing (beside submodule selection and git user settings)?

      Actually i'm trying to compile the current git master using Win 7 and VS2010 without success.

      @ cl -c -FIqt_widgets_pch.h -Yuqt_widgets_pch.h -Fptmp\obj\debug_shared\QtWidgetsd_pch.pch -nologo -Zm200 -Zc:wchar_t -Zi -MDd -W3 -w34100 -w341
      89 -MP -GR -EHsc -DQT_SHARED -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_BUILD_WIDGETS_LIB -DQT_NO_USING_NAMESPACE -DQT_MAKEDLL -DQT_NO_CAST_TO_ASCI
      I -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -D_USE_MATH_DEFINES -DQT_NO_STYLE_MAC -DQT_NO_STYLE_GTK -DQT_NO_STYLE_WINDOWSCE -DQ
      T_NO_STYLE_WINDOWSMOBILE -DQ_INTERNAL_QAPP_SRC -DQT_NO_DIRECTWRITE -DQT_DLL -DQT_GUI_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_H
      AVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -I"....\include\QtCore" -I"....\include\QtCore\5.0.0" -I"....\include\QtCore\5.0.0\QtCore"
      -I"....\include\QtGui\5.0.0" -I"....\include\QtGui\5.0.0\QtGui" -I"....\include\QtGui" -I"....\include" -I"....\include\QtWidgets\5.0.0" -I"....
      \include\QtWidgets\5.0.0\QtWidgets" -I"....\include\QtWidgets" -I"....\include" -I"tmp\rcc\debug_shared" -I"tmp" -I"..\3rdparty\wintab" -I"dialogs"
      -I"..\3rdparty\harfbuzz\src" -I"tmp\moc\debug_shared" -I"." -I"....\mkspecs\win32-msvc2010" -Fotmp\obj\debug_shared\ @C:\Users\vth\AppData\Local\Temp
      \nmDEE9.tmp
      qpushbutton.cpp
      c:\qt\5.0\qtbase\include\qtwidgets\5.0.0\qtwidgets\private../../../../../src/widgets/dialogs/qdialog_p.h(61) : fatal error C1083: Datei (Include) kan
      n nicht geöffnet werden: "QtGui/QPlatformDialogHelper": No such file or directory
      NMAKE : fatal error U1077: ""c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cl.EXE"": Rückgabe-Code "0x2"
      Stop.
      NMAKE : fatal error U1077: ""c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe"": Rückgabe-Code "0x2"
      Stop.
      NMAKE : fatal error U1077: "cd": Rückgabe-Code "0x2"
      Stop.
      NMAKE : fatal error U1077: "cd": Rückgabe-Code "0x2"
      Stop.@

      Is there a nightly build process for Qt5 or kind of branch which is stable in the meaning of: at least compilable?

      I 1 Reply Last reply 14 Oct 2015, 10:03
      1
      • R Offline
        R Offline
        RazrFalcon
        wrote on 5 Feb 2012, 00:40 last edited by
        #49

        Can't configure on ArchLinux x64

        bq. No QPA platform plugin enabled!
        If you really want to build without a QPA platform plugin you must pass
        -no-xcb and -no-wayland to configure. Doing this will produce a Qt that
        cannot run GUI applications.

        But libxcb, mesa and gperf are installed.

        Any suggestions?
        Thanks.

        1 Reply Last reply
        0
        • D Offline
          D Offline
          dangelog
          wrote on 5 Feb 2012, 03:30 last edited by
          #50

          Add the option -verbose to configure to figure out which test is failing.

          Be sure to install almost all xcb-related packages from your distribution, esp. the ones related to the various X extensions. Double check also their version.

          Software Engineer
          KDAB (UK) Ltd., a KDAB Group company

          1 Reply Last reply
          0
          • R Offline
            R Offline
            RazrFalcon
            wrote on 5 Feb 2012, 14:42 last edited by
            #51

            Thanks. Verbose helped.

            Here is my installed xcb-package list:
            extra/libxcb
            extra/xcb-proto
            extra/xcb-util
            extra/xcb-util-image
            extra/xcb-util-keysyms
            extra/xcb-util-renderutil
            extra/xcb-util-wm

            1 Reply Last reply
            0
            • R Offline
              R Offline
              RazrFalcon
              wrote on 5 Feb 2012, 16:25 last edited by
              #52

              Hello again. I have a new error:

              @cd qtsvg/ && make -f Makefile
              make[1]: Entering directory /media/data/Additional/Sources/qt5/qtsvg' /media/data/Additional/Sources/qt5/qtbase/bin/qmake QMAKE_ABSOLUTE_SOURCE_PATH=/media/data/Additional/Sources/qt5/qtbase -o Makefile qtsvg.pro QMAKESPEC has not been set, so configuration cannot be deduced. Error processing project file: qtsvg.pro make[1]: *** [Makefile] Error 3 make[1]: Leaving directory /media/data/Additional/Sources/qt5/qtsvg'
              make: *** [module-qtsvg-make_default] Error 2@

              But all other moduls are build well. Error appears after hour of compilation, not at start.

              1 Reply Last reply
              0
              • O Offline
                O Offline
                oneWonders
                wrote on 5 Feb 2012, 16:37 last edited by
                #53

                Okay it was probably all broken before as i hadn't installed the right prerequisites (the ubuntu 11.10 prerequisite had not been added to the instructions).
                i.e.
                [code]on Ubuntu Oneiric:

                sudo apt-get install libxcb.* libglu1-mesa-dev[/code]
                

                as oppossed to:
                [code]on Ubuntu/Debian:

                sudo aptitude install ~nlibxcb.*
                

                [/code]

                I now get this error on compilation:
                [code]In file included from ../3rdparty/freetype/src/autofit/autofit.c:23:0:
                ../3rdparty/freetype/src/autofit/afhints.c: In function ‘af_glyph_hints_reload’:
                ../3rdparty/freetype/src/autofit/afhints.c:642:21: warning: variable ‘first’ set but not used [-Wunused-but-set-variable]
                g++ -c -include .pch/debug-shared/QtPlatformSupport -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_NO_WAYLAND -DQT_NO_CORESERVICES -DQT_BUILD_PLATFORMSUPPORT_LIB -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_NO_CAST_FROM_ASCII -DQT_COMPILES_IN_HARFBUZZ -DQT_NO_FONTCONFIG -DFT2_BUILD_LIBRARY -DQT_COMPILES_IN_HARFBUZZ -DQT_GUI_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_HAVE_SSE3 -DQT_HAVE_SSSE3 -DQT_HAVE_SSE4_1 -DQT_HAVE_SSE4_2 -DQT_HAVE_AVX -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/linux-g++ -I. -I../../include/QtCore -I../../include/QtCore/5.0.0 -I../../include/QtCore/5.0.0/QtCore -I../../include/QtGui/5.0.0 -I../../include/QtGui/5.0.0/QtGui -I../../include/QtGui -I../../include -I../../include/QtPlatformSupport/5.0.0 -I../../include/QtPlatformSupport/5.0.0/QtPlatformSupport -I../../include/QtPlatformSupport -I../../include -I.rcc/debug-shared -I../3rdparty/harfbuzz/src -I../3rdparty/freetype/builds/unix -I../3rdparty/freetype/src -I../3rdparty/freetype/include -I/usr/X11R6/include -I.moc/debug-shared -o .obj/debug-shared/qglxconvenience.o glxconvenience/qglxconvenience.cpp
                glxconvenience/qglxconvenience.cpp:47:36: fatal error: X11/extensions/Xrender.h: No such file or directory
                compilation terminated.
                make[2]: *** [.obj/debug-shared/qglxconvenience.o] Error 1
                make[2]: *** Waiting for unfinished jobs....
                make[2]: Leaving directory /home/daniel/qt5/qtbase/src/platformsupport' make[1]: *** [sub-platformsupport-make_default-ordered] Error 2 make[1]: Leaving directory /home/daniel/qt5/qtbase'
                make: *** [module-qtbase-make_default] Error 2
                [/code]

                So i was trying to work out what i was missing in terms of dependencies. Considering i installed libglu1-mesa-dev i am not sure.

                1 Reply Last reply
                0
                • W Offline
                  W Offline
                  werispaul
                  wrote on 7 Feb 2012, 09:24 last edited by
                  #54

                  [quote author="werispaul" date="1328263852"]Actually i'm trying to compile the current git master using Win 7 and VS2010 without success.[/quote]
                  Finally got it working. In between I've switched from Strawberry Perl to ActivePerl. I'm not sure if it was the crux, but an option to keep in mind (as well as the order of perl in the system PATH, saw the wiki note quite late).

                  1 Reply Last reply
                  0
                  • ? This user is from outside of this forum
                    ? This user is from outside of this forum
                    Guest
                    wrote on 19 Feb 2012, 13:08 last edited by
                    #55

                    Let me join the ranks of people, for whom building Qt5 has failed.

                    Using gcc 4.6.2 in Windows 7 x64 environment.

                    The last console output before building failed (after spending 3 hours on it :( )

                    bq. mingw32-make[3]: Leaving directory C:/Users/Dian/qt5/qtbase/src/widgets' mingw32-make[2]: Leaving directory C:/Users/Dian/qt5/qtbase/src/widgets'
                    cd src\testlib\ && mingw32-make -f Makefile
                    mingw32-make[2]: Entering directory C:/Users/Dian/qt5/qtbase/src/testlib' mingw32-make -f Makefile.Debug all mingw32-make[3]: Entering directory C:/Users/Dian/qt5/qtbase/src/testlib'
                    g++ -c -fno-keep-inline-dllexport -g -Wall -frtti -fexceptions -mthreads -DQT_SH
                    ARED -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_AS
                    CII -DQTESTLIB_MAKEDLL -DQT_NO_DATASTREAM -DQT_MAKEDLL -DQT_ASCII_CAST_WARNINGS
                    -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -D_USE_MATH_DEFINES -DQT_DLL -DQT_CORE_L
                    IB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -
                    I"....\include\QtCore" -I"....\include" -I"." -I"....\include\QtTest\5.0.0" -
                    I"....\include\QtTest\5.0.0\QtTest" -I"....\include\QtTest" -I"....\include"
                    -I"tmp\rcc\debug_shared" -I"tmp" -I"tmp\moc\debug_shared" -I"....\mkspecs\win32
                    -g++" -o tmp\obj\debug_shared\qtestcase.o qtestcase.cpp
                    qtestcase.cpp:73:21: fatal error: crtdbg.h: No such file or directory
                    compilation terminated.
                    mingw32-make[3]: *** [tmp/obj/debug_shared/qtestcase.o] Error 1
                    mingw32-make[3]: Leaving directory C:/Users/Dian/qt5/qtbase/src/testlib' mingw32-make[2]: *** [debug-all] Error 2 mingw32-make[2]: Leaving directory C:/Users/Dian/qt5/qtbase/src/testlib'
                    mingw32-make[1]: *** [sub-testlib-make_default-ordered] Error 2
                    mingw32-make[1]: Leaving directory `C:/Users/Dian/qt5/qtbase'
                    mingw32-make: *** [module-qtbase-make_default] Error 2

                    Any ideas?
                    The missing file I actually do have on my PC, in:
                    C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\crt\src\crtdbg.h
                    But what does it have to do with anything, since I am using the GCC toolchain?

                    Also, when I configured Qt I used "-nomake tests" - shouldn't that result in skipping qttest?

                    1 Reply Last reply
                    0
                    • H Offline
                      H Offline
                      Harry443
                      wrote on 21 Feb 2012, 06:36 last edited by
                      #56

                      Can someone provide a link for Qt 5 Download??

                      1 Reply Last reply
                      0
                      • sierdzioS Offline
                        sierdzioS Offline
                        sierdzio
                        Moderators
                        wrote on 21 Feb 2012, 11:35 last edited by
                        #57

                        git clone git://gitorious.org/qt/qt5.git qt5

                        "Building Qt5 from Git.":http://developer.qt.nokia.com/wiki/Building_Qt_5_from_Git

                        (Z(:^

                        1 Reply Last reply
                        0
                        • kkoehneK Offline
                          kkoehneK Offline
                          kkoehne
                          Moderators
                          wrote on 23 Feb 2012, 11:28 last edited by
                          #58

                          @oneWonders: I just updated the package dependencies on the wiki, hope all are listed now (it's not that often that one has a clean system to start on ;)

                          @werispaul: Yes, you need ActiveState perl, and actually also a recent version. But the wiki page already points that out...

                          @ddriver: No idea. All I can tell you is that most people developing Qt on Windows are using MSVC compilers (MSVC2008, MSVC2010).

                          Director R&D, The Qt Company

                          1 Reply Last reply
                          0
                          • ? This user is from outside of this forum
                            ? This user is from outside of this forum
                            Guest
                            wrote on 23 Feb 2012, 22:48 last edited by
                            #59

                            Yes, it seems I will have to give it another go using MSVC2010, I am really itching to play a bit with QtQuick 2 :)

                            EDIT: ARGHHHHHHHHHHH ^%$^@#$@
                            Naturally, after wasting a ton of time the webkit failed, and just to make things even more irritating, when I configure with -no-webkit it says "Unknown option -no-webkit" even thou -no-webkit is listed in the configure options... WTH?

                            Also "nmake confclean" doesn't work, returns "NMAKE : fatal error U1073: don't know how to make 'confclean'"

                            Also, I tried installing ICU so I can build webkit since the configure utility option doesn't work, and the install procedure for ICU involves files that are not even present in the package.

                            I am so very, very angry I hardly contain from beating my hardware, even thou this is all the lousy software's fault...

                            I get it that it is free software, prior to final stage, but can it really be that bad? I have build Qt from sources donzes of times and different versions, and it was always effortless.

                            1 Reply Last reply
                            0
                            • P Offline
                              P Offline
                              pierrevr
                              wrote on 24 Feb 2012, 14:37 last edited by
                              #60

                              I will add my failure to this thread.

                              I managed to compile Qt without too many problems by specifying the -prefix ${ROOT}/qtbase (or -developer-build, to be exact). If I remember correctly, with the -developer-build, I still had some installation issues once qtbase passed. I ended up having to manually run install for each submodule...

                              However, when trying to build for the target platform, with -prefix /usr/lib/qt, as I want it on the target, I run into an error once qtbase is built:

                              @
                              cd qtsvg/ && make -f Makefile
                              make[1]: Entering directory /home/pvr/qt5-build-neon/qtsvg' cd src/ && /home/pvr/qt5-build-neon/qtbase/bin/qmake /home/pvr/qt5/qtsvg/src/src.pro QMAKE_ABSOLUTE_SOURCE_PATH=/home/pvr/qt5/qtbase -o Makefile QMAKESPEC has not been set, so configuration cannot be deduced. Error processing project file: /home/pvr/qt5/qtsvg/src/src.pro make[1]: *** [src/Makefile] Error 3 make[1]: Leaving directory /home/pvr/qt5-build-neon/qtsvg'
                              make: *** [module-qtsvg-make_default] Error 2
                              @

                              So I tried exporting QMAKESPEC as the path to my mkspec, but then I get the following error:

                              @
                              cd svg/ && /home/pvr/qt5-build-neon/qtbase/bin/qmake /home/pvr/qt5/qtsvg/src/svg/svg.pro
                              QMAKE_ABSOLUTE_SOURCE_PATH=/home/pvr/qt5/qtbase -o Makefile
                              Project ERROR: Cannot load qmodule.pri!
                              make[2]: *** [svg/Makefile] Error 2
                              make[2]: Leaving directory /home/pvr/qt5-build-neon/qtsvg/src' make[1]: *** [module-qtsvg-src-make_default] Error 2 make[1]: Leaving directory /home/pvr/qt5-build-neon/qtsvg'
                              make: *** [module-qtsvg-make_default] Error 2
                              @

                              So my question is essentially, is it obligatory to specify the prefix as the path to qtbase? Has anyone else managed to build qt with a different prefix?

                              edit:
                              I should add that I am cross-compiling from x86 to an ARM board (iMX515). I built Qt4.8 with no problems previously...

                              1 Reply Last reply
                              0
                              • L Offline
                                L Offline
                                Loaden
                                wrote on 1 Mar 2012, 03:03 last edited by
                                #61
                                1. I can't build with different prefix too, MSVC2010SP1.
                                2. I can't build QWebkit, I don't know where is the ICU library place?
                                  Any docs about ICU library installed in Windows?
                                1 Reply Last reply
                                0
                                • kkoehneK Offline
                                  kkoehneK Offline
                                  kkoehne
                                  Moderators
                                  wrote on 1 Mar 2012, 07:56 last edited by
                                  #62

                                  @Yuchen: I don't know about ICU on Windows, but I do know that you can just build Qt without webkit by deleting / renaming qtwebkit, qtwebkit-examples-and-demos directories, and then re-running configure. Maybe you don't need it after all?

                                  Director R&D, The Qt Company

                                  1 Reply Last reply
                                  0
                                  • L Offline
                                    L Offline
                                    Loaden
                                    wrote on 1 Mar 2012, 08:45 last edited by
                                    #63

                                    @kkoehne : Thanks for reply!
                                    I need to build QWebKit, Because I want build QtCreator use Qt5.
                                    But after try and try, and the final, I don't have any idea how to add ICU library for QWebKit.
                                    And I find a way to build Qt5 when use another prefix.

                                    Step1:
                                    set PATH=

                                    1 Reply Last reply
                                    0
                                    • L Offline
                                      L Offline
                                      Loaden
                                      wrote on 1 Mar 2012, 08:46 last edited by
                                      #64

                                      Step1:
                                      set PATH=

                                      1 Reply Last reply
                                      0
                                      • L Offline
                                        L Offline
                                        Loaden
                                        wrote on 1 Mar 2012, 08:48 last edited by
                                        #65

                                        @kkoehne : Thanks for reply!
                                        I need to build QWebKit, Because I want build QtCreator use Qt5.
                                        But after try and try, and the final, I don't have any idea how to add ICU library for QWebKit.
                                        And I find a way to build Qt5 when use another prefix.

                                        Step1:
                                        set PATH...
                                        set QTDIR...
                                        Same the wiki.

                                        Step2:
                                        configure -confirm-license -opensource -prefix D:\qpSOFT\DEVx86\qt5 -release -platform win32-msvc2010 -fast -no-stl -nomake examples -nomake tests
                                        (QtSrcDir = D:\qpSOFT\Sources\Qt5)

                                        Step3:
                                        nmake module-qtbase && nmake module-qtbase-install_subtargets

                                        Step4:
                                        nmake && nmake install

                                        The meaning is we should install qtbase to prefix first.
                                        Then we can build other module.

                                        Any tips or hits about How To Build QWebkit on Windows?
                                        Thanks!!

                                        1 Reply Last reply
                                        0
                                        • P Offline
                                          P Offline
                                          pierrevr
                                          wrote on 1 Mar 2012, 10:29 last edited by
                                          #66

                                          @Yuchen: Thanks for the tip on installing qtbase first. It works, but I don't understand why this is necessary. I am cross-compiling for a target system that has a completely different hierarchy, I don't consider it normal to have to install on the build system in this case. I ended up using a symlink on my dev system to, pointing to somewhere acceptable, installed with INSTALL_ROOT=/<path>, but I think this is a bug.

                                          As for the Windows question, I wouldn't know sorry, I develop on Linux.

                                          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