On Monday, 15 January 2018 at 13:25:26 UTC, Daniel Kozak wrote:
So why not to use cross compilation?

As I said before, you could do that for the initial port, say cross-compiling a build of ldc master for DragonFly by using ldc master on linux. However, from then on, you'd either be stuck requiring all your DragonFly users to do the same or checking that cross-compiled DragonFly binary into a binary package repository somewhere. I don't think any OS does this, as usually the binary packages are all built from source.

However, most source package repositories like ports expect everything to be built from source, so you'd still have to port 2.067 and any other bootstrap D compiler versions needed to do everything from source.

This is the lock-in that keeps most systems tied to C/C++, but we have no choice but to adapt to that. If and when dmd gets into the base OS now that it's boost-licensed, as some want to do for Fedora and elsewhere, that changes for those platforms.

On Monday, 15 January 2018 at 13:51:26 UTC, Daniel Kozak wrote:
Btw, ther is a gdc which stil uses c++ version of dfrontend, so on DragonFlyBSD you can build dmd using gdc.

Except you'd still have to port that gdc to DragonFly first, so gdc changes nothing about the above equation.

Reply via email to