0

So I was able to set up a MyApp.app bundle using MACOSX_BUNDLE using these: https://github.com/OpenHantek/openhantek/issues/229
https://github.com/euler0/mini-cmake-qt

The current step is running macdeployqt MyApp.app to handle all the target libraries and plugins.

However, when I run macdeployqt, it's trying to find some sql libraries, and threw errors because there is no sql. The problem is that my project is not using sql at all.

The libraries I'm using are Core Gui Svg Widgets WebView WebEngine WebEngineCore WebEngineWidgets Concurrent Test

PTN
  • 1,658
  • 5
  • 24
  • 54
  • 1
    `Macdeployqt` doesn't really know that your app doesn't use `sql`. By default it tries to deploy Qt plugins one of which is the `sql` one. Simply put, plugins are dynamic libraries which are **not** linked to by the application at build time but which *can* be explicitly opened by the application at runtime. It's impossible for a deployment tool such as `macdeployqt` to know beforehand whether your app uses `sql` or not - it just tries to deploy it as well as other plugins. – Dmitry Oct 24 '18 at 05:38
  • 1
    You can pass `-no-plugins` command line parameter to `macdeployqt` to prevent it from deploying plugins entirely. But then you'd have to carefully deploy the plugins your app actually uses by hand. Alternatively, you can just ignore the errors thrown by `macdeployqt`, especially if they are only about that `sql` plugin. – Dmitry Oct 24 '18 at 05:40
  • 1
    Also, it might be that some of Qt modules your app actually uses internally makes use of `QtSql` module and that's why `macdeployqt` tries to deploy that plugin. I'm not entirely sure if that's the case but I wouldn't be surprised if that's true for `WebEngine` or `WebEngineCore`, for example. – Dmitry Oct 24 '18 at 05:52
  • @Dmitry yea looks like even though the errors are there the libraries are properly set up. Thanks! – PTN Oct 24 '18 at 13:58

0 Answers0