#Hello Dagger newbie

1 messages ยท Page 1 of 1 (latest)

placid pelican
#

Right now cross-compilation will be the only viable option I think. All containers created by dagger execute them on top of a Linux kernel; it's not yet possible to execute on a macos (or windows, etc.) kernel. This is a limitation of the underlying engine (Buildkit) that we use. Buildkit gives us the ability to use QEMU for emulating other architectures (e.g. x86, arm, etc.) but not OS.

In the very long term I'd expect that we could find ways to support non-Linux builds, especially given there's so much potential use cases like yours that we'd love to support, but it will likely be a pretty large project.

I'm curious if cross-compilation is a viable option for what you're trying to achieve

late nimbus
#

Thanks Erik for the clarification.

I'm curious if cross-compilation is a viable option for what you're trying to achieve

Unfortunately, I don't think so. We are talking about building big C++ codebases, where build performance is a top priority.
Also putting aside build performance, I don't see cross-compiling C++ to macOS, having to link to native macOS libraries, as an easy path either... ๐Ÿ™ƒ

I understand the current limitations and I understand the "in the very long term" ๐Ÿ™‚

As a data point, I can confirm that there are still companies that, although they follow modern best practices regarding CI/CD, have as main and successful products desktop native applications for Windows and macOS ๐Ÿ™‚

placid pelican
# late nimbus Thanks Erik for the clarification. > I'm curious if cross-compilation is a viab...

Makes total sense! I opened a tracking issue for this since I don't believe we have one: https://github.com/dagger/dagger/issues/3158

Like I say there, it's likely not easy but I completely agree there's a lot of users like yourself that would benefit from it, so it's something we are keeping in mind.

GitHub

Multiplatform support is coming in cloak, but it will only support architecture emulation and help out users/extensions that want to perform cross-compilation. There are many use cases where cross-...