Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt Creator and other tools
  4. What does "Tool chain" option in Helpers setting in Mac Qt Creator do?
Forum Updated to NodeBB v4.3 + New Features

What does "Tool chain" option in Helpers setting in Mac Qt Creator do?

Scheduled Pinned Locked Moved Qt Creator and other tools
11 Posts 2 Posters 4.2k 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.
  • S Offline
    S Offline
    stephenju
    wrote on last edited by
    #1

    I never really understand what the "Tool chain" found in Mac version of Creator's Debugger Helper is for:

    !http://i.imgur.com/wlGSz.jpg!

    For example, the Qt 5 install was built with build-in clang tool chain. Whatever tool chain I choose in this place, the helper is always built with clang (I assume the build-in one). What exactly is this option for?

    1 Reply Last reply
    0
    • S Offline
      S Offline
      stephenju
      wrote on last edited by
      #2

      BTW. None of the Apple supplied compilers since Xcode 4.2 support PPC any more. There's really no point listing them in the Tool Chains tab.

      1 Reply Last reply
      0
      • T Offline
        T Offline
        tobias.hunger
        wrote on last edited by
        #3

        Sorry, I am not a mac user...

        How can I tell whether a compiler is part of Xcode 4.2 or earlier? Version numbers?

        1 Reply Last reply
        0
        • S Offline
          S Offline
          stephenju
          wrote on last edited by
          #4

          [quote author="Tobias Hunger" date="1336726143"]Sorry, I am not a mac user...[/quote]
          Lucky you. I wish I wasn't. :)

          [quote]How can I tell whether a compiler is part of Xcode 4.2 or earlier? Version numbers?[/quote]
          One can certainly come up with a list of matching compiler and Xcode versions. There might be one somewhere already. But if the goal is to figure out if PPC is supported, some shell script/command-line kungfu is probably better way to go. I'll see what I can find.

          1 Reply Last reply
          0
          • T Offline
            T Offline
            tobias.hunger
            wrote on last edited by
            #5

            We run "gcc -dumpmachine" and "gcc -version" already, I really would like to avoid calling even more external code.

            The compiler detection has to happen during the start up of creator after all and we want that to be fast.

            1 Reply Last reply
            0
            • S Offline
              S Offline
              stephenju
              wrote on last edited by
              #6

              Apple GCC lies about -dumpmachine :)

              Here's what I come up with on versions:

              None of LLVM-backed compilers on Mac supports PPC. That includes all versions of clang and Apple's LLVM-GCC 4.2.

              Apple GCC 4.0 is the only compiler that for sure supports PPC.

              Apple GCC 4.2 (non-LLVM one) is nasty. It originally supports PPC but Apple stripped it midway when they introduced Xcode 4.

              So Creator should only enable PPC tool chain if it's GCC 4.0 or 4.2. Disable it for everything else.

              It's not completely correct (4.2 can be both) but it will be way better than what it does now.

              Now back to the OP. What exactly does tool chain do in generating dumper? :)

              1 Reply Last reply
              0
              • T Offline
                T Offline
                tobias.hunger
                wrote on last edited by
                #7

                Thanks for the information. I'll update creator with this in mind:-)

                The tool chain is passed to DebuggingHelperBuildTask and does the following there:

                • Sets the path and other environment variables
                • Sets some parameters passed to qmake (on mac only AFAICT)
                • Sets the make command to use
                • Sets some parameters passed to the make command (for Symbian or Unix-on-Windows)

                That's it. It probably should also set the mkspec.

                Does this information help?

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  stephenju
                  wrote on last edited by
                  #8

                  Yes, it does. But I don't think Creator is doing those. As I stated in OP, it doesn't make any difference when I choose a different tool chain in that dialog. The log shows it's always built with the same one Qt library was built.

                  1 Reply Last reply
                  0
                  • T Offline
                    T Offline
                    tobias.hunger
                    wrote on last edited by
                    #9

                    Oh, it does those steps according to the code. I checked:-)

                    It is not changing the mkspec, so the actual calls to the compiler are always the same (g++ or whatever). The path should have some effect on which compiler is run though.

                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      stephenju
                      wrote on last edited by
                      #10

                      Well. If it still uses clang to build the helper when I choose GCC tool chain, then it doesn't really do what I think it should then. :)

                      All these confusion will go away after Mac finally gets some python enabled gdb love. Can't happen fast enough. Until then, I will just stick with one tool chain through out. Thanks.

                      1 Reply Last reply
                      0
                      • T Offline
                        T Offline
                        tobias.hunger
                        wrote on last edited by
                        #11

                        Please consider to file a bug report. It should use the proper mkspec for the tool chain.

                        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