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 Updated to NodeBB v4.3 + New Features

Qt5 development primer

Scheduled Pinned Locked Moved Wiki Discussion
166 Posts 72 Posters 209.9k Views 2 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.
  • S Offline
    S Offline
    Sfiet_Konstantin
    wrote on 2 Jul 2012, 11:08 last edited by
    #89

    I have a proble compiling Qt5 master recently
    (Linux x86_64 Mageia, GCC 4.7.1)

    make[2] : on entre dans le répertoire « /home/qtdev/srcs/qt5/qtsystems/src/systeminfo »
    g++ -c -m64 -pipe -g -std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fno-exceptions -fPIC -DQT_SHARED -DQT_COMPILER_SUPPORTS_SSE2 -DQT_COMPILER_SUPPORTS_SSE3 -DQT_COMPILER_SUPPORTS_SSSE3 -DQT_COMPILER_SUPPORTS_SSE4_1 -DQT_COMPILER_SUPPORTS_SSE4_2 -DQT_COMPILER_SUPPORTS_AVX -DQT_COMPILER_SUPPORTS_AVX2 -DQT_BUILD_SYSTEMINFO_LIB -DQT_MAKEDLL -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_NO_MTLIB -DQT_NO_SFW_NETREG -DQT_NO_OFONO -DQT_NO_UDISKS -DQT_NO_LIBSYSINFO -DQT_QML_LIB -DQQmlImageProvider=QQuickImageProvider -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/home/qtdev/mkspecs/default -I. -I/home/qtdev/include/QtCore -I/home/qtdev/include/QtGui -I/home/qtdev/include/QtNetwork -I/home/qtdev/include -I/home/qtdev/include/QtQml -I/home/qtdev/include/QtJsonDb -I../../include/QtSystemInfo/5.0.0 -I../../include/QtSystemInfo/5.0.0/QtSystemInfo -I../../include -I../../include/QtSystemInfo -I../../include -I.rcc/debug-shared -I.moc/debug-shared -o .obj/debug-shared/qnetworkinfo_linux.o qnetworkinfo_linux.cpp
    In file included from qnetworkinfo_linux.cpp:56:0:
    /usr/include/bluetooth/bluetooth.h: In function ‘uint64_t bt_get_le64(const void*)’:
    /usr/include/bluetooth/bluetooth.h:159:9: erreur: expected identifier before ‘’ token
    /usr/include/bluetooth/bluetooth.h:159:9: erreur: expected ‘,’ or ‘...’ before ‘(’ token
    /usr/include/bluetooth/bluetooth.h:159:9: erreur: expected ‘;’ at end of member declaration
    /usr/include/bluetooth/bluetooth.h:159:9: erreur: ‘__v’ does not name a type
    /usr/include/bluetooth/bluetooth.h:159:9: erreur: ‘typeof’ was not declared in this scope
    /usr/include/bluetooth/bluetooth.h:159:9: erreur: ‘struct bt_get_le64(const void
    )::<anonymous>’ has no member named ‘__v’
    /usr/include/bluetooth/bluetooth.h: In function ‘uint64_t bt_get_be64(const void*)’:
    /usr/include/bluetooth/bluetooth.h:164:9: erreur: expected identifier before ‘’ token
    /usr/include/bluetooth/bluetooth.h:164:9: erreur: expected ‘,’ or ‘...’ before ‘(’ token
    /usr/include/bluetooth/bluetooth.h:164:9: erreur: expected ‘;’ at end of member declaration
    /usr/include/bluetooth/bluetooth.h:164:9: erreur: ‘__v’ does not name a type
    /usr/include/bluetooth/bluetooth.h:164:9: erreur: ‘typeof’ was not declared in this scope
    /usr/include/bluetooth/bluetooth.h:164:9: erreur: ‘struct bt_get_be64(const void
    )::<anonymous>’ has no member named ‘__v’
    /usr/include/bluetooth/bluetooth.h: In function ‘uint32_t bt_get_le32(const void*)’:
    /usr/include/bluetooth/bluetooth.h:169:9: erreur: expected identifier before ‘’ token
    /usr/include/bluetooth/bluetooth.h:169:9: erreur: expected ‘,’ or ‘...’ before ‘(’ token
    /usr/include/bluetooth/bluetooth.h:169:9: erreur: expected ‘;’ at end of member declaration
    /usr/include/bluetooth/bluetooth.h:169:9: erreur: ‘__v’ does not name a type
    /usr/include/bluetooth/bluetooth.h:169:9: erreur: ‘typeof’ was not declared in this scope
    /usr/include/bluetooth/bluetooth.h:169:9: erreur: ‘struct bt_get_le32(const void
    )::<anonymous>’ has no member named ‘__v’
    /usr/include/bluetooth/bluetooth.h: In function ‘uint32_t bt_get_be32(const void*)’:
    /usr/include/bluetooth/bluetooth.h:174:9: erreur: expected identifier before ‘’ token
    /usr/include/bluetooth/bluetooth.h:174:9: erreur: expected ‘,’ or ‘...’ before ‘(’ token
    /usr/include/bluetooth/bluetooth.h:174:9: erreur: expected ‘;’ at end of member declaration
    /usr/include/bluetooth/bluetooth.h:174:9: erreur: ‘__v’ does not name a type
    /usr/include/bluetooth/bluetooth.h:174:9: erreur: ‘typeof’ was not declared in this scope
    /usr/include/bluetooth/bluetooth.h:174:9: erreur: ‘struct bt_get_be32(const void
    )::<anonymous>’ has no member named ‘__v’
    /usr/include/bluetooth/bluetooth.h: In function ‘uint16_t bt_get_le16(const void*)’:
    /usr/include/bluetooth/bluetooth.h:179:9: erreur: expected identifier before ‘’ token
    /usr/include/bluetooth/bluetooth.h:179:9: erreur: expected ‘,’ or ‘...’ before ‘(’ token
    /usr/include/bluetooth/bluetooth.h:179:9: erreur: expected ‘;’ at end of member declaration
    /usr/include/bluetooth/bluetooth.h:179:9: erreur: ‘__v’ does not name a type
    /usr/include/bluetooth/bluetooth.h:179:9: erreur: ‘typeof’ was not declared in this scope
    /usr/include/bluetooth/bluetooth.h:179:9: erreur: ‘struct bt_get_le16(const void
    )::<anonymous>’ has no member named ‘__v’
    /usr/include/bluetooth/bluetooth.h: In function ‘uint16_t bt_get_be16(const void*)’:
    /usr/include/bluetooth/bluetooth.h:184:9: erreur: expected identifier before ‘’ token
    /usr/include/bluetooth/bluetooth.h:184:9: erreur: expected ‘,’ or ‘...’ before ‘(’ token
    /usr/include/bluetooth/bluetooth.h:184:9: erreur: expected ‘;’ at end of member declaration
    /usr/include/bluetooth/bluetooth.h:184:9: erreur: ‘__v’ does not name a type
    /usr/include/bluetooth/bluetooth.h:184:9: erreur: ‘typeof’ was not declared in this scope
    /usr/include/bluetooth/bluetooth.h:184:9: erreur: ‘struct bt_get_be16(const void
    )::<anonymous>’ has no member named ‘__v’

    Seems related to bluetooth, but since I don't know bluez very well, I don't know where to look at.

    1 Reply Last reply
    0
    • S Offline
      S Offline
      sierdzio
      Moderators
      wrote on 2 Jul 2012, 11:14 last edited by
      #90

      Have you updated QTDIR and PATH before starting the build? It seems that your search paths are polluted, or bluetooth.h - maybe - bluetooth.h is not ready for C++11, or something entirely different is happening :P.

      (Z(:^

      1 Reply Last reply
      0
      • S Offline
        S Offline
        Sfiet_Konstantin
        wrote on 2 Jul 2012, 11:34 last edited by
        #91

        This issue happened to me quite recently actually. (< 2 weeks) my bluetooth.h did not had any problems before ...

        1 Reply Last reply
        0
        • S Offline
          S Offline
          Sfiet_Konstantin
          wrote on 10 Jul 2012, 10:11 last edited by
          #92

          Seems to be ok with latest updates

          1 Reply Last reply
          0
          • A Offline
            A Offline
            alpha_one_x86
            wrote on 22 Jul 2012, 19:32 last edited by
            #93

            At the compilation under Windows I have:
            Creating qmake...
            g++ -c -oproject.o -O -IC:\Users\user\Desktop\qt5-src\qtbase/qmake -IC:\Users\us
            er\Desktop\qt5-src\qtbase/qmake/generators -IC:\Users\user\Desktop\qt5-src\qtbas
            e/qmake/generators/unix -IC:\Users\user\Desktop\qt5-src\qtbase/qmake/generators/
            win32 -IC:\Users\user\Desktop\qt5-src\qtbase/qmake/generators/mac -IC:\Users\use
            r\Desktop\qt5-src\qtbase/qmake/generators/integrity -IC:\Users\user\Desktop\qt5-
            src\qtbase/include -IC:\Users\user\Desktop\qt5-src\qtbase/include/QtCore -IC:\Us
            ers\user\Desktop\qt5-src\qtbase/include/QtCore/5.0.0 -IC:\Users\user\Desktop\qt5
            -src\qtbase/include/QtCore/5.0.0/QtCore -IC:\Users\user\Desktop\qt5-src\qtbase/s
            rc/corelib/global -IC:\Users\user\Desktop\qt5-src\qtbase/mkspecs/win32-g++ -IC:
            Users\user\Desktop\qt5-src\qtbase/tools/shared -DQT_NO_TEXTCODEC -DQT_NO_UNICODE
            TABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP -DQT_BU
            ILD_QMAKE -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM
            -DQT_BOOTSTRAPPED -DQMAKE_OPENSOURCE_EDITION project.cpp
            g++: CreateProcess: No such file or directory
            mingw32-make: *** [project.o] Error 1
            del /f project.o main.o makefile.o unixmake.o unixmake2.o mingw_make.o option.o
            winmakefile.o projectgenerator.o property.o meta.o makefiledeps.o metamakefile.o
            xmloutput.o pbuilder_pbx.o borland_bmake.o msvc_nmake.o msvc_vcproj.o msvc_vcxp
            roj.o msvc_objectmodel.o msbuild_objectmodel.o registry.o gbuild.o cesdkhandler.
            o qbitarray.o qbuffer.o qarraydata.o qbytearray.o qcryptographichash.o qvsnprint
            f.o qbytearraymatcher.o qconfig.o qdatetime.o qdir.o qdiriterator.o qfiledevice.
            o qfile.o qtemporaryfile.o qfileinfo.o qabstractfileengine.o qfilesystementry.o
            qfilesystemengine.o qfilesystemengine_win.o qfilesystemiterator_win.o qfsfileeng
            ine.o qfsfileengine_iterator.o qfsfileengine_win.o qglobal.o qhash.o qiodevice.o
            qlibraryinfo.o qlist.o qlinkedlist.o qlocale.o qlocale_tools.o qlocale_win.o qm
            alloc.o qmap.o qregexp.o qtextcodec.o qutfcodec.o qstring.o qstringlist.o qstrin
            gbuilder.o qsystemerror.o qsystemlibrary.o qtextstream.o quuid.o qvector.o qsett
            ings.o qsettings_win.o qvariant.o qmetatype.o qxmlstream.o qxmlutils.o qnumeric.
            o qlogging.o
            Could Not Find C:\Users\user\Desktop\qt5-src\qtbase\qmake\project.o
            g++ -c -oproject.o -O -IC:\Users\user\Desktop\qt5-src\qtbase/qmake -IC:\Users\us
            er\Desktop\qt5-src\qtbase/qmake/generators -IC:\Users\user\Desktop\qt5-src\qtbas
            e/qmake/generators/unix -IC:\Users\user\Desktop\qt5-src\qtbase/qmake/generators/
            win32 -IC:\Users\user\Desktop\qt5-src\qtbase/qmake/generators/mac -IC:\Users\use
            r\Desktop\qt5-src\qtbase/qmake/generators/integrity -IC:\Users\user\Desktop\qt5-
            src\qtbase/include -IC:\Users\user\Desktop\qt5-src\qtbase/include/QtCore -IC:\Us
            ers\user\Desktop\qt5-src\qtbase/include/QtCore/5.0.0 -IC:\Users\user\Desktop\qt5
            -src\qtbase/include/QtCore/5.0.0/QtCore -IC:\Users\user\Desktop\qt5-src\qtbase/s
            rc/corelib/global -IC:\Users\user\Desktop\qt5-src\qtbase/mkspecs/win32-g++ -IC:
            Users\user\Desktop\qt5-src\qtbase/tools/shared -DQT_NO_TEXTCODEC -DQT_NO_UNICODE
            TABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP -DQT_BU
            ILD_QMAKE -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM
            -DQT_BOOTSTRAPPED -DQMAKE_OPENSOURCE_EDITION project.cpp
            g++: CreateProcess: No such file or directory
            mingw32-make: *** [project.o] Error 1
            Building qmake failed, return code 2

            *** qtbase/configure exited with non-zero status.

            but if I cd qtbase/qmake/;mingw32-make all it work.

            The best way to do file copy is in Qt:
            http://ultracopier.first-world.info/

            1 Reply Last reply
            0
            • G Offline
              G Offline
              gwfr
              wrote on 2 Aug 2012, 09:24 last edited by
              #94

              On MAC I encountered a problem: Under the last version of XCode you have to download the "command lines tools" seperatly from the xcode settings in the downloads pane.

              1 Reply Last reply
              0
              • G Offline
                G Offline
                GeneralPanic
                wrote on 24 Aug 2012, 14:10 last edited by
                #95

                I was getting "The Remote End Hung up Unexpectedly" when running "perl init-repository". I found that if I used the "-http" option at the end of that line, the failures stopped. It seems that the "git" protocol is a bit flaky. Making http the default in the "init-repository" script would make the process a bit more robust.

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  sierdzio
                  Moderators
                  wrote on 24 Aug 2012, 14:15 last edited by
                  #96

                  You can also rerun the script with "-f". Doesn't fix git protocol, but often it works on second try.

                  (Z(:^

                  1 Reply Last reply
                  0
                  • G Offline
                    G Offline
                    GeneralPanic
                    wrote on 24 Aug 2012, 16:20 last edited by
                    #97

                    Yeah, unfortunately for me, re-runnng w/git kept failing at different points.

                    1 Reply Last reply
                    0
                    • bibbinatorB Offline
                      bibbinatorB Offline
                      bibbinator
                      wrote on 15 Nov 2012, 02:30 last edited by
                      #98

                      Hi,
                      I'm new to command line compiling and Git.

                      Thanks to the excellent "guide":http://qt-project.org/wiki/Building_Qt_5_from_Git I was able to build Qt from source. Now, with the latest beta 2 release, I'd like to update Qt.

                      My question is simple:

                      Do I need to run configure after:

                      git pull
                      git submodule update --recursive

                      Or can I just run make again without doing that?

                      A suggestion would be to update the "Getting Updates" section to include this answer as maybe others would wonder if they need to do that too.

                      Thanks,
                      Brett

                      1 Reply Last reply
                      0
                      • S Offline
                        S Offline
                        sierdzio
                        Moderators
                        wrote on 15 Nov 2012, 06:29 last edited by
                        #99

                        Tricky. Depends on what has changed in the source code, really. If you have a solid CPU and a bit of time on your hands, you can definitely try just running make, and then if it fails, you should do a proper clean (git clean -dxf, check the link you provided for a submodule declaration), configure and make.

                        (Z(:^

                        1 Reply Last reply
                        0
                        • bibbinatorB Offline
                          bibbinatorB Offline
                          bibbinator
                          wrote on 15 Nov 2012, 06:48 last edited by
                          #100

                          Thanks for your post. I modified the wiki page updates section with a note that clean and configure may need to be re-run.

                          1 Reply Last reply
                          0
                          • I Offline
                            I Offline
                            invisible
                            wrote on 27 Nov 2012, 12:28 last edited by
                            #101

                            I'm building on windows 7 x64 with msvc2010 sp1 nmake.

                            For some reason the naming convention is different then the beta release and incompatible with the vs-addin..

                            All my lib files, dll files etc are named Qt5[lib].dll/lib instead of Qt[lib]5.dll/lib

                            My config: configure -developer-build -opensource -nomake examples -nomake tests

                            1 Reply Last reply
                            0
                            • L Offline
                              L Offline
                              lgeyer
                              wrote on 27 Nov 2012, 12:56 last edited by
                              #102

                              See http://lists.qt-project.org/pipermail/development/2012-October/007215.html

                              1 Reply Last reply
                              0
                              • C Offline
                                C Offline
                                cedrix
                                wrote on 15 Dec 2012, 16:43 last edited by
                                #103

                                Hi,

                                First I have setup qt5 (both with the linux birnary file and by compiling it) on an Ubuntu 12.04 (and 11.10) KVM virtual machine. But I can't launch any graphical qt program. I have issue with QPainter: that kind of mistakes:

                                @cedric@cedric-virtual-machine:~/Qt5.0.0beta2/5.0.0-beta2/gcc/bin$ ./assistant
                                QWidget::paintEngine: Should no longer be called
                                QPainter::begin: Paint device returned engine == 0, type: 1
                                QWidget::paintEngine: Should no longer be called
                                QPainter::begin: Paint device returned engine == 0, type: 1
                                QPainter::font: Painter not active
                                QPainter::pen: Painter not active
                                ...@

                                So I tried on a windows 32 bits virtual machine. First I installed it with the binary but I couldn't find our the right microsoft compiler so it could work. So I tryed to compile it with mingw32-make. It worked with the following config:
                                @configure -platform win32-g++ -opengl desktop@
                                Yeah I couldn't find the right version of direct X sdk so I had some issue and choose to use the opengl option.

                                This version doesn't work with qt creator. I don't know if it is suppoed to? I have an issue with "ABI detection failed. Make sur to use a matching compiler when building. No qml viewer." But I can launch the program named qmlviewer.exe. Also I can compile the following application with qmake.

                                pro file:
                                @######################################################################

                                Automatically generated by qmake (3.0) sam. 15. déc. 15:49:19 2012

                                ######################################################################

                                QT += widgets
                                TEMPLATE = app
                                TARGET = test03withoutCreator
                                DEPENDPATH += .
                                INCLUDEPATH += .

                                Input

                                SOURCES += main.cpp
                                @

                                main.cpp
                                @#include <QGuiApplication>
                                #include <QPushButton>

                                Q_DECL_EXPORT int main(int argc, char *argv[]){
                                QGuiApplication app(argc, argv);

                                QPushButton button("work");
                                button.show();
                                
                                return app.exec(&#41;;
                                

                                }@

                                but then, I have no idea how to launch it. I did:
                                @qmake
                                mingw32-make release@
                                Then I put the binary file in qtbase/bin, but I when I launch the application, I get the following message:
                                "This application has requested the runtime to terminate it in an unusual way."
                                But the exemples and demos can be launch without any dll in their direcotry. I don't get how that is possible.

                                Someone know what I should do so I can compile and launch application?

                                Sincerly,

                                Cédric

                                1 Reply Last reply
                                0
                                • F Offline
                                  F Offline
                                  fxtech
                                  wrote on 19 Dec 2012, 20:15 last edited by
                                  #104

                                  I'm having trouble building the final release on Windows 7 x64 with both VS2008 and VS2012. I have ActivePerl and Python 2.7 installed and in the path, and in both cases when I run "configure" I get this error:
                                  @
                                  'T:\home\Qt\5.0.0\qtbase\configure.exe' is not recognized as an internal or external command, operable program or batch file.
                                  *** qtbase/configure exited with non-zero status.@

                                  Any ideas?

                                  1 Reply Last reply
                                  0
                                  • S Offline
                                    S Offline
                                    sierdzio
                                    Moderators
                                    wrote on 20 Dec 2012, 06:42 last edited by
                                    #105

                                    -You should be running configure.exe on windows, not the bash script.-

                                    Add a file named ".gitignore" to the root folder or comment out line 45 in configure.bat.

                                    (Z(:^

                                    1 Reply Last reply
                                    0
                                    • J Offline
                                      J Offline
                                      jamcguire
                                      wrote on 28 Dec 2012, 00:33 last edited by
                                      #106

                                      After several failed attempts at building, here's how I finally managed to get QT5 to build with Nuwen.net's MinGW 9.4, on Windows 7 64 bit SP1 without webkit.

                                      I already had Nuwen's mingw 9.4 installed (9.5 is now available), this can be obtained from http://www.nuwen.net/mingw.html

                                      This needs to be extracted to c:\mingw or similar, and c:\mingw\bin will need to be in the PATH env variable.

                                      Then I copied c:\mingw\bin\make.exe to c:\mingw\bin\mingw32-make.exe

                                      I then downloaded and installed the following:

                                      http://www.python.org/ftp/python/3.3.0/python-3.3.0.amd64.msi
                                      http://files.rubyforge.vm.bytemark.co.uk/rubyinstaller/rubyinstaller-1.9.3-p362.exe
                                      http://downloads.activestate.com/ActivePerl/releases/5.16.1.1601/ActivePerl-5.16.1.1601-MSWin32-x64-296175.msi
                                      https://msysgit.googlecode.com/files/Git-1.8.0-preview20121022.exe

                                      I used the installers to set the path for python, ruby and perl.

                                      I downloaded QT5 (27th Dec 2012):

                                      git clone git://gitorious.org/qt/qt5.git qt5
                                      cd qt5
                                      perl init-repository

                                      Configured QT5:

                                      configure -developer-build -opensource -nomake examples -nomake tests -qt-pcre -qt-libjpeg -opengl desktop

                                      • Configure informed me that webkit would not be built due to a missing dependency, so no additional parameters were required to disable this.
                                      • I have an ATi Radeon graphics driver with builtin OpenGL support
                                      • By default configure sets pcre to 'system' at one point I downloaded and built the latest version of pcre, including the pcre16 library, I placed this into my system path, but ld was still unable to locate the library and there was no means of passing the -L parameter to ld from what I can tell, build would fail with 'unable to locate pcre16', once you specify -qt-pcre as per the above, the build will use the embedded pcre library and magically succeed.
                                      • Again, for me, build would fail without specifying -qt-libjpeg

                                      I then simply ran 'make'

                                      Good luck!

                                      1 Reply Last reply
                                      0
                                      • D Offline
                                        D Offline
                                        dpinol
                                        wrote on 9 Jan 2013, 16:38 last edited by
                                        #107

                                        What is the url for the development branch for qt5?
                                        git://gitorious.org/qt/qt5.git does not have modifications since December, and git://gitorious.org/qt/qt.git still contains 4.8

                                        thanks

                                        1 Reply Last reply
                                        0
                                        • S Offline
                                          S Offline
                                          sierdzio
                                          Moderators
                                          wrote on 9 Jan 2013, 16:41 last edited by
                                          #108

                                          Every module has a separate git repository, with the exception of QtCore, QtNetwork, QtGui, they are in qtbase.

                                          (Z(:^

                                          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