Skip to content

Commit

Permalink
docs: update macOS static compile for Xcode 15
Browse files Browse the repository at this point in the history
  • Loading branch information
zehnm committed Nov 1, 2023
1 parent 4309489 commit 9e63e09
Showing 1 changed file with 24 additions and 4 deletions.
28 changes: 24 additions & 4 deletions docs/static-compile.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,14 @@
# Compile a static desktop remote-ui app

A static remote-ui app allows to run the application on other systems without having to install
the Qt runtime environment.

This is not required for local development.

## macOS

Tested on macOS 13 with Xcode SDK 13.

### Install Qt 5.15.2 & Qt Creator

1. Download Qt for Open Source development: <https://www.qt.io/download>
Expand All @@ -16,7 +23,20 @@

### Compile static Qt framework

1. Make sure that XCode and command line tools are installed
---

⚠️ Xcode 15 with SDK 14 breaks qmake and the build! This requires the following Qt patches:

- https://bugreports.qt.io/browse/QTBUG-117225
- https://bugreports.qt.io/browse/QTBUG-114316
- Patch: https://codereview.qt-project.org/c/qt/qtbase/+/482392

See [comment in issue #1](https://github.com/unfoldedcircle/remote-ui/issues/1#issuecomment-1788131945)
for more information on how to patch it.

---

1. Make sure that Xcode and command line tools are installed
2. Patch Qt source file `~/Qt/5.15.2/Src/qtbase/src/plugins/platforms/cocoa/qiosurfacegraphicsbuffer.h`
Add the following include just before QT_BEGIN_NAMESPACE:
```
Expand All @@ -37,13 +57,13 @@ cd ~/projects/qt-static-5.15.2
-opengl -qt-freetype -qt-pcre -qt-harfbuzz -platform macx-clang
```
5. Make
Adjust `4` to the available number of cores in your machine:
Adjust `8` to the available number of cores in your machine:
```shell
make -j 4
make -j 8
```
6. Install
```shell
make -j 4 install
make -j 8 install
```
7. Configure a new Qt Kit in Qt Creator
- Preferences, Kits, Qt Versions: Add...
Expand Down

0 comments on commit 9e63e09

Please sign in to comment.