lemon写码养生 2025-06-26 13:53 采纳率: 0%
浏览 7

CMake编译QT项目

QTC++编程

使用CMake的形式进行编译,交叉编译,在linux端运行

报错:qt.qpa.plugin: Could not find the Qt platform plugin "linuxfb" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

在CMakeLists.txt里面添加了

target_compile_definitions(${PROJECT_NAME} PRIVATE
    QT_QPA_PLATFORM_PLUGIN=qlinuxfb
    QT_DEPRECATED_WARNINGS
)

如何修复这个bug?

  • 写回答

5条回答 默认 最新

  • 阿里嘎多学长 2025-06-26 13:53
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    CMake编译QT项目

    你遇到的问题是CMake编译QT项目时,报错:qt.qpa.plugin: Could not find the Qt platform plugin "linux"。这个错误通常是因为CMake没有正确地配置QT平台插件。

    解决方案:

    1. 检查CMakeLists.txt文件是否正确地包含QT平台插件的配置。例如:
    find_package(Qt5 REQUIRED COMPONENTS Core Gui)
    include(${Qt5Core_INCLUDE_DIR}/QtConfig.cmake)
    include(${Qt5Gui_INCLUDE_DIR}/QtConfig.cmake)
    
    1. 检查QT平台插件是否已经安装在系统中。如果没有安装,可以使用以下命令安装:
    sudo apt-get install qt5-default
    
    1. 在CMakeLists.txt文件中添加以下代码来指定QT平台插件的路径:
    set(CMAKE_PREFIX_PATH /path/to/qt/plugins)
    

    其中,/path/to/qt/plugins是QT平台插件的路径。

    1. 重新运行CMake并编译项目。

    如果你使用的是交叉编译,可以在CMakeLists.txt文件中添加以下代码来指定交叉编译的平台:

    set(CMAKE_SYSTEM_NAME Linux)
    set(CMAKE_CROSSCOMPILING TRUE)
    

    这将告诉CMake使用交叉编译的方式编译项目。

    希望这些解决方案能够帮助你解决问题。如果你仍然遇到问题,请提供更多的信息和错误日志。

    评论

报告相同问题?

问题事件

  • 创建了问题 6月26日