Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-74767

Qt6: Evaluate conan.io package manager from developer perspective (Kai)

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • P3: Somewhat important
    • None
    • None
    • Packaging & Installer
    • None

    Description

      Criteria

      • C++ development
      • Installation possibilities
      • Integration to existing build systems
      • Artifacts
      • Using extra languages over tools
      • Qt developers & application developers

      Below just my personal notes.

      Getting Conan

      Conan has native installers, but it is heavily recommended by their website to use the python installer. I had a Python3 installation on windows, and therefore could just run

      pip install conan
      

      This pulled in more 31 additional Python packages (for me), but installation was easy.

      Exploring packages

      So what packages (or, in conan lingo: recipes) are available? By default only conan.bintray.com is configured as remote, which features around 190 recipes.

      Some weirdness: conan search xxx r=all works case sensitively, although the documentation claims it does not (on Windows). Actually I want to search case insensitively, but the option is only -case-sensitive.

      Building wip/cmake

      Let's check which tools and libs conan provides by default:

      perl: Yes strawberryperl/5.28.1.1
      cmake: Yes, though not latest: cmake_installer/3.13.0@conan/stable

      Building qtbase (wip/cmake) with Conan on Windows

      TODO

      CMake Integration

      There's multiple ways on how to integrate Conan in a CMake app. The default way is intrusive (you change your own cmake scripts), but there's also the possibility to let CMake find modules in Conan by setting CMAKE_TOOLCHAIN_FILE.

      Open questions

      How is package /repository integrity ensured?

      Attachments

        Issue Links

          Activity

            People

              kkohne Kai Köhne
              olhirvon Olli Hirvonen
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: