# Yocto builds for Swift 6

**URL:** <https://forums.swift.org/t/yocto-builds-for-swift-6/77067>\
**Category:** Embedded\
**Created:** [January 8, 2025, 9:11am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067 "2025-01-08T09:11:23Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [January 8, 2025, 9:11am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/1 "2025-01-08T09:11:23Z")

</div>

Started updating @jeremy-prater’s work, here:

> <https://github.com/jeremy-prater/meta-swift/pull/7>
>
> WIP.

Ultimately we need to move to use the standard build script, cross-compiling stdlib and Foundation(s) with CMake is hairy. It took me about three days to get to the point where swift-hello-world would build (granted, I am completely new to Yocto).

---

<div class="post-metadata">

**Author:** ![mickeyl](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/mickeyl/32/12258_2.png) [@mickeyl](https://forums.swift.org/u/mickeyl)\
**Post date:** [January 9, 2025, 2:23pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/2 "2025-01-09T14:23:51Z")

</div>

Being one of the creators of OpenEmbedded, I can feel your pain 🙂 – It's kind of ridiculous that after decades of autotools and friends, we (as a profession) are still struggling with cross compilation.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [January 10, 2025, 12:52am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/3 "2025-01-10T00:52:33Z")

</div>

Ah, interesting! The other issue I ran into is the philosophical conflict between packages at the system and the language level, I suppose something Swift shares with Go and Rust. Yocto doesn't allow network access in the compile task, so I needed to a new `swift_package_resolve` task that runs between `do_unpack` and `do_patch` and give it access to both the network and `SSH_AUTH_SOCK` (as the environment is scrubbed). This also provides the opportunity to resolve submodules within the package dependencies themselves.

---

<div class="post-metadata">

**Author:** ![xtremekforever](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/xtremekforever/32/43018_2.png) [@xtremekforever](https://forums.swift.org/u/xtremekforever)\
**Post date:** [January 10, 2025, 12:56am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/4 "2025-01-10T00:56:09Z")

</div>

You are a true chad! I've heard and experienced that Yocto recipes can be painful to deal with, with not enough good documentation and examples to learn how to use it effectively...

But yeah, this is great work. I am excited for these things, because at my company we use Yocto for our custom armv7 board and being able to use something like meta-swift instead of custom build scripts would be fantastic!

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [January 10, 2025, 12:59am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/5 "2025-01-10T00:59:52Z")

</div>

I only knew _of_ Yocto on Monday, and now on Friday I have an embedded Linux distribution with a bunch of Swift daemons (all nicely integrated with `systemd`, thank you!). Now, I'm still yet to test on real hardware, and the next step of integrating Flutter will probably be as painful as Swift, but it's nonetheless quite impressive.

PS. Yocto isn't as weird as one might think from reading comparisons with Buildroot. The oddest thing is BitBake, the recipe definition language, which is a curious mix of Python, shell script, and its own thing.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [April 20, 2025, 11:36am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/6 "2025-04-20T11:36:46Z")

</div>

WIP, updated for Swift 6.1 [here](https://github.com/jeremy-prater/meta-swift/pull/9).

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [June 25, 2025, 2:32am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/7 "2025-06-25T02:32:19Z")

</div>

Updated for Swift 6.1.2 [here](https://github.com/jeremy-prater/meta-swift/pull/12), with armv7 support ~~reinstalled~~ reinstated by @xtremekforever (thank you) and various other fixes by Will Page.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [July 2, 2025, 9:41pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/8 "2025-07-02T21:41:48Z")

</div>

Swift 6 / scarthgap support has been merged.

> **[GitHub - jeremy-prater/meta-swift at scarthgap](https://github.com/jeremy-prater/meta-swift/tree/scarthgap)**
>
> scarthgap

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [September 17, 2025, 11:38pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/9 "2025-09-17T23:38:13Z")

</div>

Updated for 6.2, although owing to a last minute regression related to cross-compiling, C++ interoperability does not work. This will be fixed in 6.2.1.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [November 14, 2025, 9:58pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/10 "2025-11-14T21:58:06Z")

</div>

6.2.1 is tagged. C++ interop restored.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [December 14, 2025, 9:33am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/11 "2025-12-14T09:33:01Z")

</div>

6.2.3 is tagged.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [March 12, 2026, 10:06pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/12 "2026-03-12T22:06:12Z")

</div>

6.2.4 is tagged.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [March 26, 2026, 3:42am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/13 "2026-03-26T03:42:17Z")

</div>

6.3 is tagged.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [April 21, 2026, 10:37pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/14 "2026-04-21T22:37:00Z")

</div>

6.3.1 tagged; [`wrynose`](https://github.com/jeremy-prater/meta-swift/pull/56) support in progress. One nice new feature is support for `libc++`.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [May 15, 2026, 7:00am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/15 "2026-05-15T07:00:53Z")

</div>

As `wrynose` (Yocto 6.0, LTS) is released, branched and tagged in meta-swift.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [May 24, 2026, 11:12pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/16 "2026-05-24T23:12:01Z")

</div>

6.3.2 tagged for both `wrynose` and `scarthgap`; miscellaneous other fixes.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [July 2, 2026, 12:17am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/17 "2026-07-02T00:17:09Z")

</div>

6.3.3 tagged. A recent 6.4 snapshot builds with some changes, so we should be good to go when that's released too.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [September 15, 2026, 4:20am UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/18 "2026-09-15T04:20:53Z")

</div>

6.4 tagged. SBOM support incoming, too.

---

<div class="post-metadata">

**Author:** ![lukeh](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/lukeh/32/31648_2.png) [@lukeh](https://forums.swift.org/u/lukeh)\
**Post date:** [October 18, 2026, 10:35pm UTC](https://forums.swift.org/t/yocto-builds-for-swift-6/77067/19 "2026-10-18T22:35:55Z")

</div>

6.4.1 tagged. SBOM support merged.
