D for microservices: ldc, rdmd, dub now available on Alpine x86_64

Mathias Lang pro.mathias.lang at gmail.com
Wed Jan 15 04:00:26 UTC 2020


On Tuesday, 5 November 2019 at 02:16:28 UTC, Mathias Lang wrote:
>
> What's next ?
> 1) There is a pending PR 
> (https://github.com/alpinelinux/aports/pull/12006) to have GDC 
> working on all architectures alpine supports, not just x86_64.
> 2) Adding a package for gdmd
> 3) Rebuild packages based on GDC, so that all architectures are 
> supported.
> 4) Move the packages to community so they are available out of 
> the box. It would be great for it to happen by the end of the 
> month, as the next alpine release would be around end of 
> December according to their schedule, but that depends on how 
> long PR take to be reviewed.
> 5) A DMD package for x86 and x86_64 shouldn't be hard to make 
> either

Time for an update!

The GDC PR have been merged, and followed by another large fix to 
make it work on most architectures.
So if you use Alpine edge, you can just run `apk add gcc-gdc` and 
you'll get GDC-9.2.0 (with a lot of patches), which is a 2.076.0 
frontend, but allow you to bootstrap efficiently.
The package is present on ARMv7, AArch64, x86, x86_64, and s390x. 
Only ppc64le is not supported as GDC hasn't been ported to it (at 
least not as of the time of 9.2.0 release).

Additionally, `gdmd` has been added to `testing` to make it 
easier to build packages. LDC has been updated to v1.19.0 and the 
package definition fixed (only `ldc` and `ldc-runtime` present 
now, no more `ldc-static`).
Dub v1.19.0 is also available, also built with GDC, on all the 
architectures GDC supports.

The LDC package is not going to be cross-architecture in the near 
future, but it should be able to correctly cross-compile once LDC 
a version matching 2.090.1 is released (most likely LDC 1.20.0).
I am now working on finalizing the LDC package so all tests pass 
on x86 & x86_64, and to provide a DMD package.

While there are still a few details to flesh out, most things 
should work perfectly on x86_64 (we've been using it for months), 
so feel free to test it and report back. I also hope we can use 
it in some of the official dlang repositories (e.g. dlang-tour 
and the dub testsuite).
The best place to report issues with the packages is on the 
Alpine Gitlab ( 
https://gitlab.alpinelinux.org/alpine/aports/issues) and to tag 
@Geod24.


More information about the Digitalmars-d-announce mailing list