我们在Qt 5.4中开发了我们的应用程序,它作为SDK(dylib)提供,用于与其他应用程序集成。所有从属库都随SDK一起提供(Qt 5.4.x二进制文件)。 然而,当客户尝试将SDK集成到他的应用程序中时,我们遇到了一个问题。该应用程序正在使用具有Qt 5.3.x依赖性的组件。我们的SDK没有使用该应用程序。问题是由于" libqcocoa"在平台上共享,这会导致崩溃。
应用程序能否加载两个不同的Qt二进制文件(带/不带命名空间)?如果是的话,这怎么可以安全地照顾? (应用程序在Mac中)
我还需要解决的问题是,使用不同Qt版本的组件可以独立更新。通常遵循的最佳做法是什么?请建议。
答案 0 :(得分:0)
您对Qt的使用通常是一个实现细节。通过使用私有框架或静态链接Qt来隐藏它。
或者,如果您需要与用户的Qt进行互操作,请添加一个小型开源接口,将相关的Qt API转发到您的代码中。你会对大多数代码使用的Qt感到惊讶。界面最多可能是几千行,你可以机器生成它。