Details
Description
I have an app that I've compiled against Qt 5.8 that uses QtWebEngine. I am using OSX 10.11.
I followed the instructions here (https://doc.qt.io/qt-5/qtwebengine-platform-notes.html#mac-app-store-compatibility) to build QtWebEngine with appstore compliant code and linked against that build.
My app does run but the QWebEngineView component does not render because QtWebEngineProcess.app fails to load:
4/27/17 07:10:53.000 kernel[0]: Sandbox: QtWebEngineProce(20764) deny(1) mach-lookup org.chromium.Chromium.rohitfork.20763 4/27/17 07:10:53.000 kernel[0]: Sandbox: QtWebEngineProce(20765) deny(1) mach-lookup org.chromium.Chromium.rohitfork.20763 4/27/17 07:10:53.627 QtWebEngineProcess[20764]: [0427/071053:ERROR:mach_broker_mac.mm(52)] bootstrap_look_up: Permission denied (1100) 4/27/17 07:10:53.627 QtWebEngineProcess[20765]: [0427/071053:ERROR:mach_broker_mac.mm(52)] bootstrap_look_up: Permission denied (1100) 4/27/17 07:10:53.000 kernel[0]: Sandbox: QtWebEngineProce(20764) deny(1) forbidden-sandbox-reinit
To recreate:
(1) Make an app that uses QtWebEngine
(2) Use macdeployqt to prepare the app for deployment.
(3) codesign the app.
I have tried several variations of the above. For (2), I have tried using macdeployqt's -codesign option but that does not help (nor does it allow you to assign entitlements, so you have to end up signing twice anyway). For (3) I have tried signing QtWebEngineProcess.app with its own entitlements file per Apple's "Helper App" policy and even make sure to sign it with my own app's bundle name (I'm also tried without).
I also tried Qt 5.7 which yielded the same problem.
Much of what I've done is documented here: https://forum.qt.io/topic/78518/sandbox-app-for-the-mac-app-store-with-qt-5-8-and-qtwebengineprocess
Attachments
For Gerrit Dashboard: QTBUG-60443 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
194112,9 | Document Mac App Store incompatibility | 5.9.0 | qt/qtwebengine | Status: MERGED | +2 | 0 |