Search code examples
c++qtcmakeqt6qt-linguist

File lprodump missing after installing Qt6 and using LinguistTools in CMake


I've encountered an issue while setting up a Qt6 project with CMake on Linux Mint.
Despite successful installation of Qt6 and its components, I'm facing a problem with Qt6LinguistTools. Specifically, when I use find_package(Qt6 REQUIRED LinguistTools) in my CMakeLists.txt, CMake generates an error indicating that the lprodump file is missing.

Here's the error message I receive:

CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Qt6LinguistTools/Qt6LinguistToolsTargets.cmake:131 (message):
  The imported target "Qt6::lprodump" references the file

     "/usr/lib/qt6/libexec/lprodump"

  but this file does not exist.  Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/usr/lib/x86_64-linux-gnu/cmake/Qt6LinguistTools/Qt6LinguistToolsTargets.cmake"

  but not all the files it references.

I've tried reinstalling Qt6 and its components, but the file still does not appear in the expected directory.

Is there a specific package in Linux Mint (Ubuntu) that contains the lprodump file for Qt6, or is there a known workaround for this issue?

Everything was working correctly before, and I haven't knowingly changed anything in my setup that would cause this problem.


Solution

  • To resolve the issue with the missing lprodump file, install the qt6-tools-dev-tools.

    Use the following command:

    sudo apt install qt6-tools-dev-tools
    

    This should address the missing file problem.


    To verify that the file is indeed in the package, you can use the dpkg utility:

    dpkg -L qt6-tools-dev-tools
    

    Output:

    /.
    /usr
    /usr/lib
    /usr/lib/qt6
    /usr/lib/qt6/bin
    /usr/lib/qt6/bin/pixeltool
    /usr/lib/qt6/bin/qdbus
    /usr/lib/qt6/bin/qdbusviewer
    /usr/lib/qt6/bin/qdistancefieldgenerator
    /usr/lib/qt6/bin/qtdiag
    /usr/lib/qt6/bin/qtdiag6
    /usr/lib/qt6/bin/qtplugininfo
    /usr/lib/qt6/libexec
    /usr/lib/qt6/libexec/lprodump
    /usr/share
    /usr/share/doc
    /usr/share/doc/qt6-tools-dev-tools
    /usr/share/doc/qt6-tools-dev-tools/changelog.Debian.gz
    /usr/share/doc/qt6-tools-dev-tools/copyright
    

    As seen, the file is presented in the list.