代码之家  ›  专栏  ›  技术社区  ›  Jerry

我可以将Qt GUI进程放在Mac捆绑包下的Resources文件夹中吗

  •  0
  • Jerry  · 技术社区  · 6 年前

    共有2个过程。一个是位于Mac捆绑包下MacOS文件夹中的GUI进程,另一个是位于捆绑包下Resources文件夹中的托盘进程。托盘进程似乎无法找到cocoa插件/库。因为当我手动运行它时,出现如下错误

    此应用程序无法启动,因为它无法找到或加载 “”中的Qt平台插件“cocoa”。

    束结构如下所示

    -Contents
     |_MacOS
     | |_gui
     |
     |_Resources
     | |_tray
     | |_qt.conf
     |
     |_Plugins
       |_platforms
         |_libqcocoa.dylib
    

    qt。conf包含

    [Paths]
    Plugins = PlugIns
    Imports = Resources/qml
    Qml2Imports = Resources/qml
    

    将托盘进程放入Mac捆绑包中的resources文件夹是正确的做法吗?

    1 回复  |  直到 6 年前
        1
  •  1
  •   mschmidt    6 年前

    根据 Bundle Programming Guide 这个 Resources 文件夹用于存储图像、声音等资源(见表2-5):

    包含所有应用程序资源文件。进一步组织此目录的内容,以区分本地化和非本地化资源。有关此目录结构的更多信息,请参阅参考资料目录。

    以及:

    资源目录是您放置所有图像、声音、nib文件、字符串资源、图标文件、数据文件和配置文件等的地方

    这个 MacOS 但是,文件夹也可能包含助手可执行文件:

    包含应用程序独立可执行代码。通常,此目录只包含一个二进制文件,其中包含应用程序的主入口点和静态链接代码。但是,您也可以将其他独立的可执行文件(如命令行工具)放置在此目录中。

    因此,我认为 MacOS公司 文件夹是您的 tray 二进制的我不知道这是否解决了缺少平台插件的问题。