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

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.
  • A Offline
    A Offline
    arichardson
    wrote on 10 Oct 2011, 11:11 last edited by
    #14

    I did a new clean build and for some reason it worked now. Thank you for your help.

    1 Reply Last reply
    0
    • J Offline
      J Offline
      jmfairlie
      wrote on 13 Oct 2011, 08:25 last edited by
      #15

      On mac 10.6.8, I have problems building this. The linker complains about an nonexistent "OpenGl" library. After replacing with "OpenGL" (notice capital L) in the offending files* this issue resolves.
      Unfortunately QtQuick2.0 examples don't work. For some reason importing folders from QML files is not working as it should. qmlscene doesnt recognize the imported folders (despite the fact that they are there at the same level as the invoking qml file). I keep getting:

      .../somefile.qml: "SomeFolder": No such directory

      (*) among them:
      ./qtbase/src/platformsupport/cglconvenience/cglconvenience.pri: LIBS += -framework Cocoa -framework OpenGl

      1 Reply Last reply
      0
      • K Offline
        K Offline
        kkoehne
        Moderators
        wrote on 13 Oct 2011, 08:39 last edited by
        #16

        @jmfairlie: I'm not working on Mac OS X, sorry. You should raise your problems (after verifying that the problem is still there in latest master branch of e.g. qtbase) on IRC/freenode, #qt-labs channel . Or you raise it on qt5-feedback@qt.nokia.com .

        Director R&D, The Qt Company

        1 Reply Last reply
        0
        • J Offline
          J Offline
          jmfairlie
          wrote on 14 Oct 2011, 05:17 last edited by
          #17

          Now I tried with Ubuntu 11.04 with an ATI gpu (might be relevant) and linker isn't able to find GL libraries. Indeed, for some reason, there is no /usr/lib/libGL.so in my machine (not sure if this is normal) but only in /usr/lib/mesa and /usr/lib/fglrx.

          If I add "-opengl desktop" to configure then it shows the message:

          The OpenGL functionality test failed!
          You might need to modify the include and library search paths by editing
          QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in
          .../qt5/qtbase/mkspecs/linux-g++.

          If I follow the suggestion and add those lines to qtbase/mkspecs/linux-g++/qmake.conf :

          QMAKE_LIBDIR_OPENGL = /usr/lib/fglrx
          QMAKE_INCDIR_OPENGL = /usr/include/GL
          QMAKE_LIBS_OPENGL = -lGL

          It doesn't make a difference and linker is still unable to find the GL libraries, (I guess those macros are not being used)

          However if I just add a symlink to any of the GL libs to /usr/lib it finally finds them.

          Unfortunately, QtQuick2.0 examples (what I'm interested in) don't work either, this time qmlscene SEGFAULTS in a seemingly unrelated call ... I guess I'll need to wait until a more stable version comes out.

          1 Reply Last reply
          0
          • K Offline
            K Offline
            kkoehne
            Moderators
            wrote on 15 Oct 2011, 07:28 last edited by
            #18

            Ubuntu 11.04 is used heavily in the development teams, so this should really work out of the box, without any environment variable tinkering. The libgl1-mesa-dev should include the /usr/lib/libGL.so file, try installing this package. (Btw, you can find out which package provides which file by using the "apt-get file search" command).

            For reference, this is the output "configure -nokia-developer -nomake examples -nomake demos -nomake tests" gives me on an Ubuntu 11.04:

            @
            Build type: linux-g++
            Architecture: i386
            Host architecture: i386
            Platform notes:

                    - Also available for Linux: linux-kcc linux-icc linux-cxx
            

            Build .................. libs
            Configuration .......... debug shared dll qpa largefile stl precompile_header mmx 3dnow sse sse2 sse3 ssse3 sse4_1 sse4_2 avx minimal-config small-config medium-config large-config full-config fontconfig xlib xcb-xlib phonon-backend accessibility opengl qpa reduce_exports clock-gettime clock-monotonic mremap getaddrinfo ipv6ifname getifaddrs inotify system-jpeg system-mng system-png png system-tiff system-freetype system-zlib nis cups glib gstreamer dbus openssl xcb alsa pulseaudio concurrent audio-backend svg v8 debug private_tests
            Debug .................. yes
            Qt 3 compatibility ..... no
            QtDBus module .......... yes (run-time)
            QtConcurrent code ...... yes
            QtGui module ........... yes
            QtScript module ........ yes
            QtScriptTools module ... yes
            QtXmlPatterns module ... yes
            Phonon module .......... yes
            Multimedia module ...... auto
            SVG module ............. yes
            WebKit module .......... yes
            JavaScriptCore JIT ..... To be decided by JavaScriptCore
            V8 module .............. yes
            Declarative module ..... yes
            Declarative debugging ...yes
            Location module ........ no
            Support for S60 ........ no
            Symbian DEF files ...... no
            STL support ............ yes
            PCH support ............ yes
            MMX/3DNOW/SSE/SSE2/SSE3. yes/yes/yes/yes/yes
            SSSE3/SSE4.1/SSE4.2..... yes/yes/yes
            AVX..................... yes
            IPv6 ifname support .... yes
            getaddrinfo support .... yes
            getifaddrs support ..... yes
            Accessibility .......... yes
            NIS support ............ yes
            CUPS support ........... yes
            Iconv support .......... no
            Glib support ........... yes
            GStreamer support ...... yes
            PulseAudio support ..... yes
            Large File support ..... yes
            GIF support ............ plugin
            TIFF support ........... plugin (system)
            JPEG support ........... plugin (system)
            PNG support ............ yes (system)
            MNG support ............ plugin (system)
            zlib support ........... system
            Session management ..... auto
            OpenGL support ......... yes (Desktop OpenGL)
            OpenVG support ......... no
            MySQL support .......... plugin
            SQLite support ......... plugin (qt)
            OpenSSL support ........ yes (run-time)
            Alsa support ........... yes
            ICD support ............ no
            libICU support ......... no
            Xcb support ............ limited (old version)
            @

            Director R&D, The Qt Company

            1 Reply Last reply
            0
            • J Offline
              J Offline
              jmfairlie
              wrote on 15 Oct 2011, 09:02 last edited by
              #19

              this is what I got, I'll check on Monday if getting rid of the differences makes any difference:
              @
              --- a/jean
              +++ b/kkoehne
              -QtDBus module .......... no
              +QtDBus module .......... yes (run-time)
              -Phonon module .......... no
              +Phonon module .......... yes
              -CUPS support ........... no
              +CUPS support ........... yes
              -GStreamer support ...... no
              -PulseAudio support ..... no
              +GStreamer support ...... yes
              +PulseAudio support ..... yes
              -MNG support ............ plugin (qt)
              +MNG support ............ plugin (system)
              +MySQL support .......... plugin
              -OpenSSL support ........ no
              -Alsa support ........... no
              +OpenSSL support ........ yes (run-time)
              +Alsa support ........... yes
              @

              1 Reply Last reply
              0
              • J Offline
                J Offline
                jmfairlie
                wrote on 20 Oct 2011, 16:00 last edited by
                #20

                pulled current latest version:

                commit 0a0d66efceb64bcacffbf733053834829c657df7
                Date: Wed Oct 19 07:38:37 2011 +1000

                and this time qmlscene spit some more info after segfault:

                "Cannot create platform GL context, none of GLX, EGL, DRI2 is enabled"

                This message directed me to:
                http://comments.gmane.org/gmane.comp.lib.qt.qml/3060

                which suggests to install libx11-xcb-dev. Indeed I didn't have it, so I installed, cleaned and rebuilt, and now it works.

                If this package is required for qtdeclarative to work properly shouldn't configure notice it and mention it somehow?
                Anyhow, Just added this info to the wiki page.

                1 Reply Last reply
                0
                • Q Offline
                  Q Offline
                  qtd1d1
                  wrote on 22 Nov 2011, 10:02 last edited by
                  #21

                  The installation was successful, but when I try to compile my own application I get the following error:
                  QDeclarativeView: No such file or directory

                  Just read the windows needs python for QDeclarative. What packages do I need for Linux (Ubuntu 10.04) ?

                  Does anyone had similar problems?

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    andreagrandi
                    wrote on 23 Nov 2011, 13:37 last edited by
                    #22

                    After compiling Qt5 I'd like to do a safe "make install" in my system. With "safe" I mean that I don't want to overwtite my Qt4 libs on my system so they should be installed in (for example) /opt/qt5 if it's possible.

                    I also would like to start packaging Qt5 in a Ubuntu PPA, but even if I've a little experience with packaging, I really don't know how to split an installation in multiple packages (I mean: qt-multimedia, qt-database, qt-tools ecc.... just to make you an example): should I take example from the actual Qt4 packages available in Ubuntu? Anyone want to help me? Thanks!

                    1 Reply Last reply
                    0
                    • Q Offline
                      Q Offline
                      qtd1d1
                      wrote on 24 Nov 2011, 10:07 last edited by
                      #23

                      How do you force qtbase/src/plugins/platforms/xcb to recompile?

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        markc
                        wrote on 29 Dec 2011, 06:45 last edited by
                        #24

                        I get this at every dir level I tried on Archlinux x86_64...
                        @~qt5-git/qtbase git submodule update --init src/3rdparty/v8
                        You need to run this command from the toplevel of the working tree.@
                        I already have a libv8 3.6.5.1 as part of my system so would it possible for qtbase and whatever else needs libv8 to just link against my system version?

                        1 Reply Last reply
                        0
                        • L Offline
                          L Offline
                          ludde
                          wrote on 3 Jan 2012, 07:57 last edited by
                          #25

                          Hi! Trying to build Qt 5 for the first time, but I'm not getting very far...
                          Seems like the init-repository script is not working properly with the the --http option. All the repos are cloned using "http:", except for the qt3d repo which still tries to use "git:".
                          Very simple problem, but with my total lack of experience with perl, I'm not sure how to work around it... If anyone could give me a hint on how to get past this, by fixing init-repository, or doing some manual step, it would be most appreciated.

                          1 Reply Last reply
                          0
                          • M Offline
                            M Offline
                            markc
                            wrote on 3 Jan 2012, 09:53 last edited by
                            #26

                            What is the best way to incorporate qtwebkit into a qt5 build?
                            @...
                            [pid 30835] open(".../qt5-git/.git/modules/qtwebkit/refs/heads/master", O_RDONLY) = -1 ENOENT (No such file or directory)
                            [pid 30835] write(2, "fatal: Oops\n", 12fatal: Oops@

                            @ludde, I'm not sure why there is not some plain English instructions to clone the repo exactly, or a bash script, rather than buried inside an obfuscated perl script that doesn't seem to work. An example .git/config file would be more useful.

                            1 Reply Last reply
                            0
                            • L Offline
                              L Offline
                              ludde
                              wrote on 4 Jan 2012, 12:41 last edited by
                              #27

                              Managed to make init-repository clone all the modules (by fiddling a bit with the perl script, without really understanding what I was doing...).

                              Also managed to run configure. But compiling (using Microsoft Visual Studio 2005, on Windows 7, 64 bit) eventually fails:

                              @
                              c:\users\ludde\qt\qt5\qtbase\src\plugins\platforms\windows\qtwindowsglobal.h(178) : error C2065: 'WM_XBUTTONDOWN' : undeclared identifier
                              c:\users\ludde\qt\qt5\qtbase\src\plugins\platforms\windows\qtwindowsglobal.h(178) : error C2065: 'WM_XBUTTONDBLCLK' : undeclared identifier
                              c:\users\ludde\qt\qt5\qtbase\src\plugins\platforms\windows\qwindowscontext.h(74) : error C2059: syntax error : '<L_TYPE_raw>'
                              @

                              Any ideas on what might be causing this?

                              1 Reply Last reply
                              0
                              • K Offline
                                K Offline
                                kkoehne
                                Moderators
                                wrote on 11 Jan 2012, 08:45 last edited by
                                #28

                                @ludde: I filed https://bugreports.qt.nokia.com/browse/QTBUG-23580 regarding your problems with the -http option. About the windows problems ... don't know, it compiles for me :( I guess you're better off subscribing to qt-development@qt-project.org, and posting your problems there.

                                Director R&D, The Qt Company

                                1 Reply Last reply
                                0
                                • O Offline
                                  O Offline
                                  oneWonders
                                  wrote on 21 Jan 2012, 14:40 last edited by
                                  #29

                                  While running
                                  @./configure -developer-build -opensource -nomake examples -nomake tests@

                                  i get this error partway through:

                                  @Creating qmake. Please wait...
                                  g++ -c -o project.o -pipe -DQMAKE_OPENSOURCE_EDITION -g -g -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -Igenerators/integrity -I/home/daniel/qt5/qtbase/include -I/home/daniel/qt5/qtbase/include/QtCore -I/home/daniel/qt5/qtbase/include/QtCore/5.0.0 -I/home/daniel/qt5/qtbase/include/QtCore/5.0.0/QtCore -I/home/daniel/qt5/qtbase/src/corelib/global -I/home/daniel/qt5/qtbase/src/corelib/xml -I/home/daniel/qt5/qtbase/tools/shared -DQT_NO_PCRE -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -I/home/daniel/qt5/qtbase/mkspecs/linux-g++ -DHAVE_QCONFIG_CPP -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DEPRECATED project.cpp
                                  make: g++: Command not found
                                  make: *** [project.o] Error 127
                                  @

                                  I am using ubuntu, does anyone know where i went wrong?
                                  Sorry i'm rather new to all this :$

                                  1 Reply Last reply
                                  0
                                  • D Offline
                                    D Offline
                                    dangelog
                                    wrote on 21 Jan 2012, 15:01 last edited by
                                    #30

                                    Do you have gcc installed...?

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

                                    1 Reply Last reply
                                    0
                                    • L Offline
                                      L Offline
                                      ludde
                                      wrote on 21 Jan 2012, 16:53 last edited by
                                      #31

                                      Had this problem too. For some reason you need not only have gcc installed, but have it available as g++. This can be accomplished by installing the g++ package (and possibly also by just creating an alias from g++ to gcc, but I didn't try this).

                                      1 Reply Last reply
                                      0
                                      • O Offline
                                        O Offline
                                        oneWonders
                                        wrote on 23 Jan 2012, 00:42 last edited by
                                        #32

                                        Ah thanks, that works, i had gcc installed but not g++ it seems.

                                        Strangely, i cannot run demos as even if i make the executables runnable, then i get something like this:
                                        @Details: Failed to execute child process "/usr/bin/tea_service" (No such file or directory)@

                                        after making the qt teaservice.desktop demo executable as a program in its right click properties and trying to run.
                                        Somehow i get the impression that this is not what i am meant to be doimng anyway, as the idea that i would have to right click and change the permissions of all the demo files that i wanted to run doesn't seem the most fun so i guess i am trying to do it the wrong way :$

                                        Also, i tried to compile qt creator and the qtquick3d demos myself and got errors.
                                        (For example, for the qtquick3d):
                                        @daniel@andy-desktop:~/qt_creator/what$ qmake /home/daniel/qt5/qtquick3d/demos/demos.pro
                                        daniel@andy-desktop:~/qt_creator/what$ sudo make
                                        cd quick3d/ && /home/daniel/qt5/qtbase/bin/qmake /home/daniel/qt5/qtquick3d/demos/quick3d/quick3d.pro -o Makefile
                                        cd quick3d/ && make -f Makefile
                                        make[1]: Entering directory /home/daniel/qt_creator/what/quick3d' cd model_viewer/ && /home/daniel/qt5/qtbase/bin/qmake /home/daniel/qt5/qtquick3d/demos/quick3d/model_viewer/model_viewer.pro -o Makefile cd model_viewer/ && make -f Makefile make[2]: Entering directory /home/daniel/qt_creator/what/quick3d/model_viewer'
                                        g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_DECLARATIVE_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I../../../../qt5/qtbase/mkspecs/linux-g++ -I../../../../qt5/qtquick3d/demos/quick3d/model_viewer -I../../../../qt5/qtbase/include/QtCore -I../../../../qt5/qtbase/include/QtGui -I../../../../qt5/qtbase/include/QtWidgets -I../../../../qt5/qtdeclarative/include -I../../../../qt5/qtdeclarative/include/QtDeclarative -I../../../../qt5/qtbase/include -I../../../../qt5/qtbase/include/QtNetwork -I../../../../qt5/qtxmlpatterns/include -I../../../../qt5/qtxmlpatterns/include/QtXmlPatterns -I/usr/X11R6/include -I. -I../../../../qt5/qtquick3d/demos/quick3d/model_viewer -I. -o main.o ../../../../qt5/qtquick3d/demos/quick3d/model_viewer/main.cpp
                                        In file included from ../../../../qt5/qtbase/include/QtGui/qopengl.h:1:0,
                                        from ../../../../qt5/qtdeclarative/include/QtDeclarative/../../src/declarative/items/qquickcanvas.h:46,
                                        from ../../../../qt5/qtdeclarative/include/QtDeclarative/qquickcanvas.h:1,
                                        from ../../../../qt5/qtdeclarative/include/QtDeclarative/../../src/declarative/items/qquickview.h:46,
                                        from ../../../../qt5/qtdeclarative/include/QtDeclarative/qquickview.h:1,
                                        from ../../../../qt5/qtdeclarative/include/QtDeclarative/QQuickView:1,
                                        from ../../../../qt5/qtquick3d/demos/quick3d/model_viewer/../qmlres.h:47,
                                        from ../../../../qt5/qtquick3d/demos/quick3d/model_viewer/main.cpp:42:
                                        ../../../../qt5/qtbase/include/QtGui/../../src/gui/opengl/qopengl.h:69:21: fatal error: GL/gl.h: No such file or directory
                                        compilation terminated.
                                        make[2]: *** [main.o] Error 1
                                        make[2]: Leaving directory /home/daniel/qt_creator/what/quick3d/model_viewer' make[1]: *** [sub-model_viewer-make_default] Error 2 make[1]: Leaving directory /home/daniel/qt_creator/what/quick3d'
                                        make: *** [sub-quick3d-make_default] Error 2
                                        @

                                        Sorry to be a pain.

                                        1 Reply Last reply
                                        0
                                        • B Offline
                                          B Offline
                                          bunjee
                                          wrote on 24 Jan 2012, 22:29 last edited by
                                          #33

                                          Greetings guys,

                                          On Windows 7 x64 I get the following:

                                          @qwindowstheme.cpp: In member function 'virtual QVariant QWindowsTheme::themeHint(QPlatformTheme::ThemeHint) const': qwindowstheme.cpp:77:53: error: 'SPI_GETDROPSHADOW' was not declared in this scope@

                                          It seems that the SPI_GETDROPSHADOW is under a WIN_NT_32 define.

                                          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