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. Force Moc to moc a file
Qt 6.11 is out! See what's new in the release blog

Force Moc to moc a file

Scheduled Pinned Locked Moved General and Desktop
20 Posts 3 Posters 10.3k Views 3 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.
  • M Offline
    M Offline
    matze42
    wrote on last edited by
    #11

    Ok,

    I understand, that qmakedoes not recognize ( and probably even cannot - as it supposed doesn't expand macros) that the concerning file needs to get mocced.
    Is there any ways then to add something in the pro file to tell qmake, that the file needs to get mocced ? p.e.:

    moc += bar.h
    
    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by SGaist
      #12

      qmake is a project manager so indeed it doesn't include macro expansion. moc on the other end (since Qt 5) should expand macro properly.

      I just tested your code on OS X and it worked

      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
      • M Offline
        M Offline
        matze42
        wrote on last edited by
        #13

        Hi SGaist,

        thanx for caring about this issue,
        Did yout test it without the Q_OBJECT pseudo code commented or uncommented ?

        In the meanwhile I started to redesign this part of our software (we are talking about 70-80 type definitions in about 7-8 namespaces resp. files ) - but anyway it would be quite interesting ( at least for me ) to know, if such kind of constructs make sense in the Qt world or not.

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

          I've removed/re-added it and it still builds. Q_OBJECT is useful when you implement e.g. signals and slots

          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
          • M Offline
            M Offline
            matze42
            wrote on last edited by
            #15

            Strange !

            Seems, that my qmake implementation is different from yours.

            Reproducable it builds if I have the Q_OBJECT uncommented, and it gives me the linker errors if i have it commented.

            So this led me to the assumption, that a (uncommented) Q_OBJECT occurance in a header file is the hint for qmake to mark it to be mocced.

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

              Which version of qmake are you using ?

              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
              • M Offline
                M Offline
                matze42
                wrote on last edited by
                #17

                Qt 5.4.0 GCC 64bit on Xubuntu 14 64bit.

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

                  Are you calling qmake through Qt Creator or on the command line ?

                  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
                  • M Offline
                    M Offline
                    matze42
                    wrote on last edited by
                    #19

                    By QtCreator

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

                      Did you re-try with Qt 5.5 ?

                      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