Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Unable to build static version of Qt 5.15.2
Forum Updated to NodeBB v4.3 + New Features

Unable to build static version of Qt 5.15.2

Scheduled Pinned Locked Moved Solved Installation and Deployment
21 Posts 10 Posters 7.6k 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.
  • R Offline
    R Offline
    robertwilliamallen
    wrote on last edited by
    #1

    I am trying to build qt-everywhere-src-5.15.2 statically but am getting a bunch of errors.

    Steps to reproduce:

    1. Download https://download.qt.io/archive/qt/5.15/5.15.2/single/
    2. Unzip and cd into directory
    3. Run:
    ./configure -static
    

    Here's some of the output:

    qt-everywhere-src-5.15.2/qtbase/include/QtCore/../../src/corelib/global/qfloat16.h:300:7: error: ‘numeric_limits’ is not a class template
      300 | class numeric_limits<QT_PREPEND_NAMESPACE(qfloat16)> : public numeric_limits<float>
    
    1 Reply Last reply
    0
    • Christian EhrlicherC Online
      Christian EhrlicherC Online
      Christian Ehrlicher
      Lifetime Qt Champion
      wrote on last edited by
      #2

      What MSVC version do you use?

      Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
      Visit the Qt Academy at https://academy.qt.io/catalog

      1 Reply Last reply
      0
      • R Offline
        R Offline
        robertwilliamallen
        wrote on last edited by
        #3

        @Christian-Ehrlicher said in Unable to build static version of Qt 5.15.2:

        MSVC

        I'm not sure. Where would I find that info?

        jsulmJ 1 Reply Last reply
        0
        • R robertwilliamallen

          @Christian-Ehrlicher said in Unable to build static version of Qt 5.15.2:

          MSVC

          I'm not sure. Where would I find that info?

          jsulmJ Offline
          jsulmJ Offline
          jsulm
          Lifetime Qt Champion
          wrote on last edited by
          #4

          @robertwilliamallen said in Unable to build static version of Qt 5.15.2:

          Where would I find that info?

          What version of Visual Studio did you install?

          https://forum.qt.io/topic/113070/qt-code-of-conduct

          R 1 Reply Last reply
          0
          • jsulmJ jsulm

            @robertwilliamallen said in Unable to build static version of Qt 5.15.2:

            Where would I find that info?

            What version of Visual Studio did you install?

            R Offline
            R Offline
            robertwilliamallen
            wrote on last edited by
            #5

            @jsulm I don't have Visual Studio installed. I am working on Ubuntu 22.

            1 Reply Last reply
            0
            • Christian EhrlicherC Online
              Christian EhrlicherC Online
              Christian Ehrlicher
              Lifetime Qt Champion
              wrote on last edited by Christian Ehrlicher
              #6

              Ok, it looked like an error from MSVC and you did not tell us before what OS and compiler you're using.

              What gcc version doe you use?

              /edit: maybe this is your problem: https://codereview.qt-project.org/c/qt/qtbase/+/330713

              Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
              Visit the Qt Academy at https://academy.qt.io/catalog

              R 1 Reply Last reply
              2
              • Christian EhrlicherC Christian Ehrlicher

                Ok, it looked like an error from MSVC and you did not tell us before what OS and compiler you're using.

                What gcc version doe you use?

                /edit: maybe this is your problem: https://codereview.qt-project.org/c/qt/qtbase/+/330713

                R Offline
                R Offline
                robertwilliamallen
                wrote on last edited by
                #7

                @Christian-Ehrlicher
                gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0

                Christian EhrlicherC 1 Reply Last reply
                0
                • R robertwilliamallen

                  @Christian-Ehrlicher
                  gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0

                  Christian EhrlicherC Online
                  Christian EhrlicherC Online
                  Christian Ehrlicher
                  Lifetime Qt Champion
                  wrote on last edited by
                  #8

                  So apply the patch in my links since it's for gcc11 and up.

                  Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                  Visit the Qt Academy at https://academy.qt.io/catalog

                  R 2 Replies Last reply
                  0
                  • Christian EhrlicherC Christian Ehrlicher

                    So apply the patch in my links since it's for gcc11 and up.

                    R Offline
                    R Offline
                    robertwilliamallen
                    wrote on last edited by
                    #9

                    @Christian-Ehrlicher Will try and report back. Thanks!

                    1 Reply Last reply
                    0
                    • Christian EhrlicherC Christian Ehrlicher

                      So apply the patch in my links since it's for gcc11 and up.

                      R Offline
                      R Offline
                      robertwilliamallen
                      wrote on last edited by
                      #10

                      @Christian-Ehrlicher I have never applied a patch and not sure how to do that. Is there a guide somewhere I can follow?

                      1 Reply Last reply
                      0
                      • Christian EhrlicherC Online
                        Christian EhrlicherC Online
                        Christian Ehrlicher
                        Lifetime Qt Champion
                        wrote on last edited by
                        #11

                        Manually adding two include statements in two files shouldn't be that hard

                        Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                        Visit the Qt Academy at https://academy.qt.io/catalog

                        R 1 Reply Last reply
                        0
                        • Christian EhrlicherC Christian Ehrlicher

                          Manually adding two include statements in two files shouldn't be that hard

                          R Offline
                          R Offline
                          robertwilliamallen
                          wrote on last edited by
                          #12

                          @Christian-Ehrlicher Yep. I figured as much after I asked. So that is done and it seemed to get further in the compilation but I'm still getting errors:

                          Creating qmake...
                          ........................................In file included from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearray.cpp:43:
                          /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearraymatcher.h: In static member function ‘static QStaticByteArrayMatcherBase::Skiptable QStaticByteArrayMatcherBase::generate(const char*, uint)’:
                          /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearraymatcher.h:103:38: error: ‘numeric_limits’ is not a member of ‘std’
                            103 |         const auto uchar_max = (std::numeric_limits<uchar>::max)();
                                |                                      ^~~~~~~~~~~~~~
                          /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearraymatcher.h:103:58: error: expected primary-expression before ‘>’ token
                            103 |         const auto uchar_max = (std::numeric_limits<uchar>::max)();
                                |                                                          ^
                          /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearraymatcher.h:103:61: error: ‘::max’ has not been declared; did you mean ‘std::max’?
                            103 |         const auto uchar_max = (std::numeric_limits<uchar>::max)();
                                |                                                             ^~~
                                |                                                             std::max
                          In file included from /usr/include/c++/11/algorithm:62,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/include/QtCore/../../src/corelib/global/qglobal.h:142,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/include/QtCore/qglobal.h:1,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/include/QtCore/../../src/corelib/thread/qatomic.h:41,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/include/QtCore/qatomic.h:1,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/include/QtCore/../../src/corelib/tools/qrefcount.h:43,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/include/QtCore/qrefcount.h:1,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearray.h:44,
                                           from /home/robert/Documents/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearray.cpp:42:
                          /usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
                           3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
                                |     ^~~
                          gmake: *** [Makefile:350: qbytearray.o] Error 1
                          
                          
                          1 Reply Last reply
                          0
                          • Christian EhrlicherC Online
                            Christian EhrlicherC Online
                            Christian Ehrlicher
                            Lifetime Qt Champion
                            wrote on last edited by
                            #13

                            As you can see the compiler complains again about numeric_limits so add this include there too.

                            Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                            Visit the Qt Academy at https://academy.qt.io/catalog

                            R O 2 Replies Last reply
                            0
                            • Christian EhrlicherC Christian Ehrlicher

                              As you can see the compiler complains again about numeric_limits so add this include there too.

                              R Offline
                              R Offline
                              robertwilliamallen
                              wrote on last edited by
                              #14

                              @Christian-Ehrlicher Added #include <limits> to qbytearraymatcher.h and it worked. Thanks for your help! Just getting into Qt and definitely feeling the learning curve.

                              P Y 2 Replies Last reply
                              2
                              • R robertwilliamallen

                                @Christian-Ehrlicher Added #include <limits> to qbytearraymatcher.h and it worked. Thanks for your help! Just getting into Qt and definitely feeling the learning curve.

                                P Offline
                                P Offline
                                papaya
                                wrote on last edited by
                                #15

                                @robertwilliamallen It works,good job!!!

                                1 Reply Last reply
                                0
                                • Christian EhrlicherC Christian Ehrlicher referenced this topic on
                                • R robertwilliamallen

                                  @Christian-Ehrlicher Added #include <limits> to qbytearraymatcher.h and it worked. Thanks for your help! Just getting into Qt and definitely feeling the learning curve.

                                  Y Offline
                                  Y Offline
                                  yudingyuan
                                  wrote on last edited by
                                  #16

                                  @robertwilliamallen thanks

                                  1 Reply Last reply
                                  0
                                  • B Offline
                                    B Offline
                                    brant_luo
                                    wrote on last edited by
                                    #17

                                    @papaya said in Unable to build static version of Qt 5.15.2:

                                    It works,good job!!!

                                    1 Reply Last reply
                                    0
                                    • C Offline
                                      C Offline
                                      CyberCrisis
                                      wrote on last edited by
                                      #18

                                      I am using Qt5.12.6 and I was getting the same error. While attempting this solution I noticed that qglobal.h is included in all these files mentioned, so I added limits include to the __cplusplus check like this and it worked:

                                      #ifdef __cplusplus
                                      #  include <type_traits>
                                      #  include <limits>
                                      #  include <cstddef>
                                      #  include <utility>
                                      #endif
                                      
                                      1 Reply Last reply
                                      0
                                      • Christian EhrlicherC Christian Ehrlicher

                                        As you can see the compiler complains again about numeric_limits so add this include there too.

                                        O Offline
                                        O Offline
                                        otaolafr
                                        wrote on last edited by
                                        #19

                                        @Christian-Ehrlicher Hello,
                                        is there anywhere we can ask for the files to be updated? the ones in the https://download.qt.io/official_releases/qt/5.15/5.15.2/single/
                                        still have this issue I struggled to compile it until I found this post by chance.... would be great to rectify this for other future people out there....

                                        SGaistS 1 Reply Last reply
                                        0
                                        • O otaolafr

                                          @Christian-Ehrlicher Hello,
                                          is there anywhere we can ask for the files to be updated? the ones in the https://download.qt.io/official_releases/qt/5.15/5.15.2/single/
                                          still have this issue I struggled to compile it until I found this post by chance.... would be great to rectify this for other future people out there....

                                          SGaistS Offline
                                          SGaistS Offline
                                          SGaist
                                          Lifetime Qt Champion
                                          wrote on last edited by
                                          #20

                                          @otaolafr Hi,

                                          If you are building from source anyway, you should download a more recent version such as 5.15.11. See the content of the 5.15 releases folder.

                                          Interested in AI ? www.idiap.ch
                                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                          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