Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. [Solved]Building custom Qt from source
Forum Updated to NodeBB v4.3 + New Features

[Solved]Building custom Qt from source

Scheduled Pinned Locked Moved General and Desktop
34 Posts 3 Posters 16.8k Views 4 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.
  • JKSHJ JKSH

    confclean actually doesn't exist in Qt 5. IIRC, it was hard to make it work with Qt's modular structure. See https://bugreports.qt.io/browse/QTBUG-34304 for a discussion.

    Did you get the source code from git? Or did you download the source package?

    A Offline
    A Offline
    astodolski
    wrote on last edited by
    #15

    @JKSH
    code.qt.io/qt using git

    1 Reply Last reply
    0
    • SGaistS SGaist

      No: confclean.

      Better yet: use a shadow build, this way you can keep your sources clean and just nuke the thing if you need to restart.

      A Offline
      A Offline
      astodolski
      wrote on last edited by
      #16

      @SGaist said:

      No: confclean.

      Reason for using clean instead of confclean referenced here thanks to @JKSH

      1 Reply Last reply
      0
      • JKSHJ Offline
        JKSHJ Offline
        JKSH
        Moderators
        wrote on last edited by
        #17

        Assuming that you checked out the code to C:\Qt\git, use the following commands to clean your source tree:

        > cd C:\Qt\git\
        > git clean -dfx
        > git submodule foreach "git clean -dfx"
        

        Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

        A 2 Replies Last reply
        0
        • JKSHJ JKSH

          Assuming that you checked out the code to C:\Qt\git, use the following commands to clean your source tree:

          > cd C:\Qt\git\
          > git clean -dfx
          > git submodule foreach "git clean -dfx"
          
          A Offline
          A Offline
          astodolski
          wrote on last edited by
          #18

          @JKSH said:

          Assuming that you checked out the code to C:\Qt\git, use the following commands to clean your source tree:

          > cd C:\Qt\git\
          > git clean -dfx
          > git submodule foreach "git clean -dfx"
          

          So this is in regards to making a correction and perform a re-build? I didn't do that for the initial build.

          From memory, I do a checkout, init-repository --no-webkit, and then perform the configure step and finally the call to nmake.

          JKSHJ 1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #19

            My bad, old reflex from Qt 4. However, I'd recommend an out of source build, so you don't have to clean anything, just nuke the current build folder content and restart

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

            A 1 Reply Last reply
            0
            • SGaistS SGaist

              My bad, old reflex from Qt 4. However, I'd recommend an out of source build, so you don't have to clean anything, just nuke the current build folder content and restart

              A Offline
              A Offline
              astodolski
              wrote on last edited by
              #20

              @SGaist said:

              I'd recommend an out of source build, so you don't have to clean anything

              Hi,

              Not sure I understand what "out of source" means. I get the part about nuke the current folder. If what you mean is just delete the build folder and start again, then I must ask, does not doing a clean solve that?

              1 Reply Last reply
              0
              • SGaistS Offline
                SGaistS Offline
                SGaist
                Lifetime Qt Champion
                wrote on last edited by
                #21

                It literally means build from another folder outside of Qt's source tree so basically:

                cd qt_build
                C:\Path\to\Qt\configure 
                

                Indeed, the result is pretty much the same however It's generally faster (at least for me until now) to delete a folder than to recursively go through all Qt's modules and clean one after the other.

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

                A 2 Replies Last reply
                1
                • SGaistS SGaist

                  It literally means build from another folder outside of Qt's source tree so basically:

                  cd qt_build
                  C:\Path\to\Qt\configure 
                  

                  Indeed, the result is pretty much the same however It's generally faster (at least for me until now) to delete a folder than to recursively go through all Qt's modules and clean one after the other.

                  A Offline
                  A Offline
                  astodolski
                  wrote on last edited by
                  #22

                  @SGaist
                  Understood. Issue still dogging me though as to why it can't find the include files for openssl

                  1 Reply Last reply
                  0
                  • A astodolski

                    @JKSH said:

                    Assuming that you checked out the code to C:\Qt\git, use the following commands to clean your source tree:

                    > cd C:\Qt\git\
                    > git clean -dfx
                    > git submodule foreach "git clean -dfx"
                    

                    So this is in regards to making a correction and perform a re-build? I didn't do that for the initial build.

                    From memory, I do a checkout, init-repository --no-webkit, and then perform the configure step and finally the call to nmake.

                    JKSHJ Offline
                    JKSHJ Offline
                    JKSH
                    Moderators
                    wrote on last edited by
                    #23

                    @astodolski said:

                    So this is in regards to making a correction and perform a re-build?

                    Yes.

                    I didn't do that for the initial build.

                    Before your initial build, your folders were already clean, so you didn't need to clean them.

                    @SGaist said:

                    I'd recommend an out of source build, so you don't have to clean anything, just nuke the current build folder content and restart

                    Yes, that sounds very useful and it works for both git and non-git sources, I'll need to try this the next time I build!

                    Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                    1 Reply Last reply
                    0
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on last edited by
                      #24

                      @astodolski
                      Can you share the full configure line you are using and the build setup summary ?

                      @JKSH
                      Out of source is just so great, you should ;)

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

                      A 1 Reply Last reply
                      0
                      • SGaistS SGaist

                        @astodolski
                        Can you share the full configure line you are using and the build setup summary ?

                        @JKSH
                        Out of source is just so great, you should ;)

                        A Offline
                        A Offline
                        astodolski
                        wrote on last edited by
                        #25

                        @SGaist said:

                        @astodolski
                        Can you share the full configure line you are using and the build setup summary ?

                        @JKSH
                        Out of source is just so great, you should ;)

                        -debug-and-release
                        -opensource
                        -shared
                        -opengl
                        desktop
                        -nomake
                        examples
                        -nomake
                        tests
                        -no-icu
                        -no-angle
                        -no-style-windowsce
                        -no-style-windowsmobile
                        -mp
                        -platform
                        win32-msvc2013
                        -openssl
                        -I
                        C:\openssl-1.0.2d\include
                        -L
                        C:\openssl-1.0.2d\lib
                        -prefix
                        c:\qt\5.6\msvc2013
                        -saveconfig
                        light_cfg

                        1 Reply Last reply
                        0
                        • JKSHJ JKSH

                          Assuming that you checked out the code to C:\Qt\git, use the following commands to clean your source tree:

                          > cd C:\Qt\git\
                          > git clean -dfx
                          > git submodule foreach "git clean -dfx"
                          
                          A Offline
                          A Offline
                          astodolski
                          wrote on last edited by
                          #26

                          @JKSH said:

                          Assuming that you checked out the code to C:\Qt\git, use the following commands to clean your source tree:

                          > cd C:\Qt\git\
                          > git clean -dfx
                          > git submodule foreach "git clean -dfx"
                          

                          WOW! That is amazingly faster than nmake clean. Thanks for that.

                          1 Reply Last reply
                          0
                          • SGaistS SGaist

                            It literally means build from another folder outside of Qt's source tree so basically:

                            cd qt_build
                            C:\Path\to\Qt\configure 
                            

                            Indeed, the result is pretty much the same however It's generally faster (at least for me until now) to delete a folder than to recursively go through all Qt's modules and clean one after the other.

                            A Offline
                            A Offline
                            astodolski
                            wrote on last edited by
                            #27

                            @SGaist said:

                            It literally means build from another folder outside of Qt's source tree so basically:

                            cd qt_build
                            C:\Path\to\Qt\configure 
                            

                            Indeed, the result is pretty much the same however It's generally faster (at least for me until now) to delete a folder than to recursively go through all Qt's modules and clean one after the other.

                            Looking at the batch file in the root folder, it looks as if that file does essentially the same thing. i.e configure.bat cd's to qtbase\configure

                            1 Reply Last reply
                            0
                            • SGaistS Offline
                              SGaistS Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on last edited by
                              #28

                              Yes but it also triggers the build of the other modules, otherwise you will only build qtbase.

                              Can you try again with -openssl-linked ?

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

                              A 1 Reply Last reply
                              0
                              • SGaistS SGaist

                                Yes but it also triggers the build of the other modules, otherwise you will only build qtbase.

                                Can you try again with -openssl-linked ?

                                A Offline
                                A Offline
                                astodolski
                                wrote on last edited by
                                #29

                                @SGaist said:

                                Yes but it also triggers the build of the other modules, otherwise you will only build qtbase.

                                Can you try again with -openssl-linked ?

                                OK. So on my checked out build I have:
                                c:\Qt\qt5

                                You're suggesting:
                                cd c:\Qt\qt5
                                qtbase\configure

                                Is that correct?

                                There exists a configure script in both the root and the qtbase folder

                                JKSHJ 1 Reply Last reply
                                0
                                • SGaistS Offline
                                  SGaistS Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on last edited by
                                  #30

                                  No, I'm suggesting:

                                  cd C:\Qt\MyQt5Build
                                  C:\Qt\qt5\configure.bat
                                  

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

                                  A 1 Reply Last reply
                                  0
                                  • SGaistS SGaist

                                    No, I'm suggesting:

                                    cd C:\Qt\MyQt5Build
                                    C:\Qt\qt5\configure.bat
                                    
                                    A Offline
                                    A Offline
                                    astodolski
                                    wrote on last edited by
                                    #31

                                    @SGaist said:

                                    No, I'm suggesting:

                                    cd C:\Qt\MyQt5Build
                                    C:\Qt\qt5\configure.bat
                                    

                                    So MyQt5Build is initially empty and is a target folder for the build correct? That's what you meant by shadow build?

                                    1 Reply Last reply
                                    0
                                    • SGaistS Offline
                                      SGaistS Offline
                                      SGaist
                                      Lifetime Qt Champion
                                      wrote on last edited by
                                      #32

                                      Yes, the same thing happening by default when you build a project with Qt Creator

                                      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
                                      • A astodolski

                                        @SGaist said:

                                        Yes but it also triggers the build of the other modules, otherwise you will only build qtbase.

                                        Can you try again with -openssl-linked ?

                                        OK. So on my checked out build I have:
                                        c:\Qt\qt5

                                        You're suggesting:
                                        cd c:\Qt\qt5
                                        qtbase\configure

                                        Is that correct?

                                        There exists a configure script in both the root and the qtbase folder

                                        JKSHJ Offline
                                        JKSHJ Offline
                                        JKSH
                                        Moderators
                                        wrote on last edited by
                                        #33

                                        @astodolski said:

                                        There exists a configure script in both the root and the qtbase folder

                                        Do not use the script in qtbase directly. Only use the root script.

                                        Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                                        1 Reply Last reply
                                        0
                                        • A Offline
                                          A Offline
                                          astodolski
                                          wrote on last edited by
                                          #34

                                          Sweet success!. Cleaning the source tree using the git commands suggested as well as the proper level of path for the include folder for openssl worked. Thanks to ALL!

                                          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