mcallegari / qlcplus

Q Light Controller Plus (QLC+) is a free and cross-platform software to control DMX or analog lighting systems like moving heads, dimmers, scanners etc. This project is a fork of the great QLC project written by Heikki Junnila that aims to continue the QLC development and to introduce new features.
Apache License 2.0
918 stars 349 forks source link

Immediate kill of qlcplus process on macOS #1579

Closed second-string closed 1 month ago

second-string commented 1 month ago
This area is reserved to developers.
If you are not a developer, you are in the wrong place and your issue will be closed.

For discussions, feedbacks, ideas and new fixtures, go to:
http://www.qlcplus.org/forum/index.php
and provide as many details as possible regarding your findings.

Before reporting new issue, please discuss it on the forum. Let's keep the issues tidy!

If you are a developer, you are supposed to have built QLC+ from sources, and started to debug the issue you have found.

Therefore, please provide a crash log or references to the code that are supposed to help the QLC+ developers to resolve the issue.
Also, if your issue concerns a specific platform, please indicate it in the issue title like [platform] description.

Machine: Macbook Pro M1 macOS Sonoma 14.4 Qt: 5.15.13 All dependencies install through macports git commit: current master HEAD, 0ce5c5b3da9d2eeca405c961d84dc16812d90b45

qmake, make, and make install all succeed. Upon launching the qlcplus-launcher I see the normal choice of fixture editor or main application. Selecting either button immediately exits. If either is launched from the command line, there is an immediate singe-line error printed: zsh: killed ~/QLC+.app/Contents/MacOS/qlcplus.

Looking into the crash logs in Console.app, the exception type is given as:

Exception Type:        EXC_BAD_ACCESS (SIGKILL (Code Signature Invalid))

I've reopened Xcode and verified i'm logged in with my developer account and have local development certs created. I tried rebooting according to this doc which doesn't help. Apparently there are many levels to this code signing sigkill, and because I at least have a thread stack trace (although unhelpful) in the Console log, it's not just an immediate kill by the macOS security.

Have you seen this issue before?

mcallegari commented 1 month ago

Sorry to disappoint you again but the situation on macOs is very complicated. It is not possible to build on Mx silicon, even with macports. In fact I'm still using my old Intel mac to build official releases.

Apple and the Qt libraries (or open source in general) are not friends so everything is so difficult to achieve there. My plan is to move to homebrew and be able to produce builds for arm64 and x86. Unfortunately this activity is VERY time consuming and my progresses are very slow.

By the way, this has nothing to do with code signing. It is related to how Qt libraries (and dependencies) are bundled together.

If you are a developer you are welcome to contribute, but please be aware that you're mostly alone on this since my support is very limited.

second-string commented 1 month ago

Are you open to a PR to edit the contributing/macos docs to say that it's only possible on Intel macs? It would be nice to avoid someone else losing ~4 hours trying to get this working

mcallegari commented 1 month ago

Wiki updated