{
  "$type": "site.standard.document",
  "content": "---\ntitle: \"Extempore's aliiiiive on aarch64\"\ndescription: \"Extempore now builds and runs on Apple Silicon. The audio libraries work, the\n  build process is cleaner, and Rosetta is no longer required for livecoding.\"\ntags: [\"extempore\"]\n---\n\nIf you're on the [extempore](https://github.com/digego/extempore) mailing list\nyou'll have seen the chatter over the last year or so about how development has\n(sortof) stalled due to the \"core team\" ([@digego](https://github.com/digego)\nand [@me](https://github.com/benswift), but calling it a \"core team\" makes it\nsound more grown-up) having other committments these days and not so much time\nto hack on it.\n\nA recent (much appreciated)\n[drive-by PR](https://github.com/digego/extempore/pull/415) got me thinking...\nhow much work would it _actually_ be to get it working properly on aarch64? This\nhas been weighing me down for a while; I'm still doing the\noccasional livecoding gig using an old intel build (via rosetta 2) but that's\nbeing\n[phased out](https://developer.apple.com/documentation/apple-silicon/about-the-rosetta-translation-environment).\n\nI had a reasonably free afternoon yesterday and pulled down that branch\n(thanks [@soulofmischief](https://github.com/soulofmischief)). It built straight\naway but couldn't actually compile/run xtlang code. There was some\nfutzing with the build setup required, a few external lib updates, and other\ngeneral gardening tasks.\n\nBy the end of yesterday I had:\n\n- extempore building & the full \"audio\" suite of libraries working correctly\n  (including AOT-compilation) on both macOS aarch and Linux x64\n- made headway on updating the build & test GitHub Actions workflows (still not\n  properly working yet, though)\n- streamlined a few aspects of the build process (not related to the aarch64\n  port specifically, just 'axe sharpening' stuff while I was working on it)\n\nIt all works on my M3 MBP and my x64 Linux box. I haven't got easy access to a\nWindows machine these days so I'm relying on the (very indirect and frustrating)\nGitHub windows runners to do my debugging there. So that's something that'll\nneed to be done before this can ever land on the main branch.\n\nI also didn't touch the graphics stuff; some of it might Just Work^TM although I\nsuspect not. And graphics is a big support burden (esp. since extempore is all\nOpenGL) so I think I'm reconsidering whether we even include that stuff in the\n\"core distribution\" anymore, or just leave it as libraries that might/might not\nwork depending on your platform.\n\nBut it wasn't _too_ bad, and I feel positive that it's do-able without an\nunreasonable amount of engineering effort. One other problem is that I'm going\naway for a month in Dec/Jan, so I don't think this branch will be tested & ready\nbefore then. But if any extempore users out there want to pull down & compile\nthe [aarch64 branch](https://github.com/digego/extempore/tree/aarch64) and give\nme feedback (either via GH or on the extempore mailing list) then that'd be much\nappreciated.\n",
  "createdAt": "2026-05-13T23:14:41.839Z",
  "description": "Extempore now builds and runs on Apple Silicon. The audio libraries work, the build process is cleaner, and Rosetta is no longer required for livecoding.",
  "path": "/blog/2025/12/17/extempore-s-aliiiiive-on-aarch64",
  "publishedAt": "2025-12-17T00:00:00.000Z",
  "site": "at://did:plc:tevykrhi4kibtsipzci76d76/site.standard.publication/self",
  "tags": [
    "extempore"
  ],
  "textContent": "Extempore now builds and runs on Apple Silicon. The audio libraries work, the build process is cleaner, and Rosetta is no longer required for livecoding.",
  "title": "Extempore's aliiiiive on aarch64"
}