Thanks for the offer. If you have the time and skills, we do need new branding. Feel free to contact me directly at <emily-elizabeth.howard AT outlook.com>
Livecode Community on Apple Silicon
Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller
-
Emily-Elizabeth
- Posts: 173
- Joined: Mon Jan 03, 2022 7:10 pm
- Contact:
Re: Livecode Community on Apple Silicon
Re: Livecode Community on Apple Silicon
I thought I'd check this out. I'm on MacOS 26.2, and have Xode 26.3 installed. At some point I installed Homebrew and updated it so that libffi was updated to 3.5.2, which apparently is required. Seems the code provided is for python2, but I have python 3.13.7 installed. Also seems to be coded for openSSL 1.x, but current is openSSL 3.xEmily-Elizabeth wrote: ↑Sat Mar 21, 2026 4:41 pmhttps://github.com/emily-elizabeth/HyperXTalk
You can download and follow the build instructions, but this only makes a build for ARM Macs. It still has all the Livecode branding, so need to get working on that.
I had quite some difficulty actually compiling for ARM. I managed in the end to get a success message on compile with *a lot* of input from Claude AI.
EDIT: The crash on launch was because I missed your last 2 steps after make compile-mac
Actually launches well now - thank you!
PS: The changes required to get this to build are below. Some of this may just be AI confabulating, but was the only way I could get 'Success' on make compile-mac:
1. Build libffi from source for ARM64
The prebuilt libffi.a was missing. Run prebuilt/scripts/build-libffi-mac-arm64.sh to compile it from the bundled source in thirdparty/libffi/git_master/.
2. Fix python → python3 symlink
gen_icu_data_remove_list script called python (Python 2), which no longer exists on modern macOS:
sudo ln -s /usr/bin/python3 /usr/local/bin/python
3. Build missing third-party libraries from source
Several prebuilt .a files were absent. Built them via Xcode and copied to prebuilt/lib/mac/:
libskia, libsqlite, libxml, libzip, libcairo, libxslt, libiodbc
4. Copy libffi headers into the build include path
ffi.h, ffitarget.h, ffi_arm64.h, and related headers from thirdparty/libffi/git_master/darwin_common/include/ copied to _build/mac/Debug/include/.
5. OpenSSL 3.x API renames in prebuilt headers
The prebuilt .a libraries were OpenSSL 3.x but the headers still declared OpenSSL 1.x names. Fixed by renaming declarations and adding backward-compat macros:
prebuilt/include/openssl/evp.h — renamed declarations and appended:
c# define EVP_CIPHER_CTX_block_size EVP_CIPHER_CTX_get_block_size
# define EVP_CIPHER_CTX_key_length EVP_CIPHER_CTX_get_key_length
# define EVP_CIPHER_key_length EVP_CIPHER_get_key_length
prebuilt/include/openssl/ssl.h — renamed declaration and appended:
c# define SSL_get_peer_certificate SSL_get1_peer_certificate
6. Update ssl.stubs to match OpenSSL 3.x symbol names
thirdparty/libopenssl/ssl.stubs is the source for the generated weak stub library. Updated four entries:
EVP_CIPHER_key_length → EVP_CIPHER_get_key_length
EVP_CIPHER_CTX_key_length → EVP_CIPHER_CTX_get_key_length
EVP_CIPHER_CTX_block_size → EVP_CIPHER_CTX_get_block_size
SSL_get_peer_certificate → SSL_get1_peer_certificate
Then deleted the stale _build/mac/Debug/libopenssl_stubs.a to force regeneration.
7. Install libffi 3.5.2 via Homebrew
The Xcode project hardcoded /opt/homebrew/Cellar/libffi/3.5.2/. Updated Homebrew to get the exact version:
bashbrew update && brew upgrade libffi
Also copied `ffi.h` and `ffitarget.h` from Homebrew into `prebuilt/include/`.
**9. Rebuild `libsqlite.a` with missing C++ dataset classes**
The prebuilt `libsqlite.a` only contained the raw SQLite C API. The C++ wrapper classes needed by `dbsqlite` were never compiled in. Manually compiled and added to the archive:
thirdparty/libsqlite/src/dataset.cpp
thirdparty/libsqlite/src/qry_dat.cpp
thirdparty/libsqlite/src/sqlitedataset.cpp
thirdparty/libsqlite/src/sqlitedecode.cpp
Rebuilt the archive cleanly by deleting the old one first and using ar rcs from scratch.
-
Emily-Elizabeth
- Posts: 173
- Joined: Mon Jan 03, 2022 7:10 pm
- Contact:
Re: Livecode Community on Apple Silicon
Thanks for the notes, I'll be sure to include them on the GitHub. 
-
Emily-Elizabeth
- Posts: 173
- Joined: Mon Jan 03, 2022 7:10 pm
- Contact:
Re: Livecode Community on Apple Silicon
Added a pre-release to the GItHub repo. I forgot to notarize it, so hopefully it runs for you. The web browser widget has been updated to use WKWebView. It doesn't compile standalones yet, but I'm working around the standalone builder to know about ARM builds.
Re: Livecode Community on Apple Silicon
your notes on notarising worked fine when I actually noticed them and put them into use 
I think a lot of the issues I had were from malformed paths for Python and not having up-to-date Homebrew installed.
The IDE seems to work very well on macOS Tahoe! Kudos!
I'll re-test building it to confirm the other changes that may be needed.
I think a lot of the issues I had were from malformed paths for Python and not having up-to-date Homebrew installed.
The IDE seems to work very well on macOS Tahoe! Kudos!
I'll re-test building it to confirm the other changes that may be needed.
-
Emily-Elizabeth
- Posts: 173
- Joined: Mon Jan 03, 2022 7:10 pm
- Contact:
Re: Livecode Community on Apple Silicon
Thanks for testing it out, I'm doing lots of updates and will be getting rid of the installer and just go the DMG route. I'm removing the mobile stuff, as you can't submit GPL to the stores (plus I'll have enough on my hands with the desktop platforms). I'm also removing the Emscripten stuff as it never seemed to work when I tried it.stam wrote: ↑Sun Mar 22, 2026 11:15 pmyour notes on notarising worked fine when I actually noticed them and put them into use
I think a lot of the issues I had were from malformed paths for Python and not having up-to-date Homebrew installed.
The IDE seems to work very well on macOS Tahoe! Kudos!
I'll re-test building it to confirm the other changes that may be needed.
-
Emily-Elizabeth
- Posts: 173
- Joined: Mon Jan 03, 2022 7:10 pm
- Contact:
Re: Livecode Community on Apple Silicon
There is a new DMG on the GitHub release page that has been signed and notarized.