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. Qt 6.2.2 experimental/filesystem => filesystem
Forum Updated to NodeBB v4.3 + New Features

Qt 6.2.2 experimental/filesystem => filesystem

Scheduled Pinned Locked Moved Solved General and Desktop
11 Posts 5 Posters 3.1k 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.
  • AxelViennaA Offline
    AxelViennaA Offline
    AxelVienna
    wrote on last edited by
    #1

    I am trying to migrate a Qt 5.15.2 / C++17 project on OpenSUSE Leap 15.3 to Qt 6.2.2.
    Obviously one of the changes of Qt 6.2 is expecting the experimental-prefix of std::filesystem to cease. This is why I end up with a "filesystem: No such file or directory" message when qfile.h wants to include the latter.
    My installation of OS Leap 15.3 is clean and out of the box.
    The Qt 5.15.2 kit works seemlessly, 6.2.2 does not compile.
    The desired header is in the "v1" and "9" directory of the /usr/include/c++ tree. It is under "experimental" in the "7" directory of that tree.

    I am pretty confident that I am just missing something and you'll point me to my omission in no time. Thanks in advance!

    C++ and Python walk into a bar. C++ reuses the first glass.

    1 Reply Last reply
    0
    • AxelViennaA Offline
      AxelViennaA Offline
      AxelVienna
      wrote on last edited by
      #7

      Thanks all. The problem is: Qt Creator recognizes compilers of different versions (7 and 9). When configuring the kits, however, it always refers to /usr/bin/g++. There is a combobox where one could theoretically select a compiler, but it is disabled in my case. I do need both versions as I have to keep 5.15.2 as a compile option. Changing the symlink to the version I need (update-alternatives) is a workaround as it disables compiling against the other Qt version. Would be a blast to be able to select the compiler version directly and use /usr/bin/g++-9 instead of /usr/bin/g++.

      C++ and Python walk into a bar. C++ reuses the first glass.

      jsulmJ 1 Reply Last reply
      0
      • Christian EhrlicherC Offline
        Christian EhrlicherC Offline
        Christian Ehrlicher
        Lifetime Qt Champion
        wrote on last edited by
        #2

        According to the supported platforms page you need at least gcc 9.

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

        AxelViennaA 1 Reply Last reply
        4
        • Christian EhrlicherC Christian Ehrlicher

          According to the supported platforms page you need at least gcc 9.

          AxelViennaA Offline
          AxelViennaA Offline
          AxelVienna
          wrote on last edited by
          #3

          @Christian-Ehrlicher I know....GCC9 is installed. Somehow qmake still does not find it.

          C++ and Python walk into a bar. C++ reuses the first glass.

          1 Reply Last reply
          0
          • JoeCFDJ Offline
            JoeCFDJ Offline
            JoeCFD
            wrote on last edited by JoeCFD
            #4

            @AxelVienna said in Qt 6.2.2 experimental/filesystem => filesystem:

            /usr/include/c++

            if you still have experimental-prefix of std::filesystem, gcc/g++ version is not right.
            check the version of g++: g++ --version

            GCC 8
            Runtime Library (libstdc++)
            Improved experimental support for C++17, including the following features:
            Deduction guides to support class template argument deduction.
            std::filesystem implementation.
            std::char_traits<char> and std::char_traits<wchar_t> are usable in constant expressions.
            std::to_chars and std::from_chars (for integers only, not for floating point types).

            you may purge gcc/g++ 7 from your computer and reinstall gcc/g++ 9

            1 Reply Last reply
            1
            • Christian EhrlicherC Offline
              Christian EhrlicherC Offline
              Christian Ehrlicher
              Lifetime Qt Champion
              wrote on last edited by
              #5

              Either uninstall gcc 7 or set the CC and CXX environment variables appropriately.

              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
              1
              • M Offline
                M Offline
                mchinand
                wrote on last edited by
                #6

                If you want to keep the older gcc versions for some reason, you can update which version /usr/bin/g++ points to with 'update-alternatives'. This page is for Ubuntu, but I think it works OpenSuse as well (Steps 2-4), https://linuxconfig.org/how-to-switch-between-multiple-gcc-and-g-compiler-versions-on-ubuntu-20-04-lts-focal-fossa

                1 Reply Last reply
                1
                • AxelViennaA Offline
                  AxelViennaA Offline
                  AxelVienna
                  wrote on last edited by
                  #7

                  Thanks all. The problem is: Qt Creator recognizes compilers of different versions (7 and 9). When configuring the kits, however, it always refers to /usr/bin/g++. There is a combobox where one could theoretically select a compiler, but it is disabled in my case. I do need both versions as I have to keep 5.15.2 as a compile option. Changing the symlink to the version I need (update-alternatives) is a workaround as it disables compiling against the other Qt version. Would be a blast to be able to select the compiler version directly and use /usr/bin/g++-9 instead of /usr/bin/g++.

                  C++ and Python walk into a bar. C++ reuses the first glass.

                  jsulmJ 1 Reply Last reply
                  0
                  • AxelViennaA AxelVienna

                    Thanks all. The problem is: Qt Creator recognizes compilers of different versions (7 and 9). When configuring the kits, however, it always refers to /usr/bin/g++. There is a combobox where one could theoretically select a compiler, but it is disabled in my case. I do need both versions as I have to keep 5.15.2 as a compile option. Changing the symlink to the version I need (update-alternatives) is a workaround as it disables compiling against the other Qt version. Would be a blast to be able to select the compiler version directly and use /usr/bin/g++-9 instead of /usr/bin/g++.

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

                    @AxelVienna Can you show your Compilers tab? You can add compilers there, then you should be able to select needed compiler in a Kit.

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

                    1 Reply Last reply
                    0
                    • AxelViennaA Offline
                      AxelViennaA Offline
                      AxelVienna
                      wrote on last edited by
                      #9

                      This is the compilers tab
                      4a98705c-d99a-41ef-b699-317a00087acc-grafik.png

                      ... and this is the kit, where the compiler selection is disabled.
                      (Pressing the "manage" button next to the compiler seleciton opens the compiler tab)
                      f72ad01c-0d0e-46f0-8daf-8bcc1809219a-grafik.png

                      C++ and Python walk into a bar. C++ reuses the first glass.

                      jsulmJ 1 Reply Last reply
                      0
                      • AxelViennaA AxelVienna

                        This is the compilers tab
                        4a98705c-d99a-41ef-b699-317a00087acc-grafik.png

                        ... and this is the kit, where the compiler selection is disabled.
                        (Pressing the "manage" button next to the compiler seleciton opens the compiler tab)
                        f72ad01c-0d0e-46f0-8daf-8bcc1809219a-grafik.png

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

                        @AxelVienna said in Qt 6.2.2 experimental/filesystem => filesystem:

                        where the compiler selection is disabled

                        You can create a new Kit and configure it with same Qt version but another compiler.

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

                        1 Reply Last reply
                        2
                        • AxelViennaA Offline
                          AxelViennaA Offline
                          AxelVienna
                          wrote on last edited by
                          #11

                          Ah, the cloning did the trick. Was unaware of this, thanks for the hint.
                          While I use qmake from the Qt 6.2.2 tree, I still have to add QMAKE_CXX=g++-9 as an additional argument to the qmake build step. Then it works :-)

                          C++ and Python walk into a bar. C++ reuses the first glass.

                          1 Reply Last reply
                          2

                          • Login

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved