On 10/18/2013 12:16 PM, Timo Teras wrote:
>> Also, is there an established way already of building Alpine based
>> on musl and/or cross-compiling for ARM? It doesn't seem to be a big
>> deal, but I'd like to know the efforts that have already been put
>> into this so I'm not duplicating any work.
> We've patched aports so that a minimal bootstrap system can be cross
> compiled. All changes are in git already. And some minor notes + links
> to the scripts I used to bootstrap musl builders are at my wiki wall:
That helped! I had to clear out some roadblocks, after which I now have
a successful and reproducible bootstrap crossbuild of i486-alpine-linux-musl
(without KERNEL_PKG and DEBUG_PKG so far; I simply haven't tried).
The problems I encountered, working with your scripts on current edge:
* I instructed abuild to clean up the musl build before installing
headers. This is necessary to prevent the patches from being applied
multiple times by the "prepare" step if you call the script more
* CBUILD is no longer being set in /etc/abuild.conf (this was changed
pretty recently). This prevented gmp from being built correctly
(I think it just used the host setting for the build).
More packages might be affected by this.
* Set up the proper pkgconfig environment for the cross root.
Without this the relevant .pc files cannot be found. The first
package that broke in the ordered crossbuild because of this
* Added installation of all packages after they have been built.
This is a necessary step since later packages require files from
earlier ones. Also attempt to install $PKG-dev. Some packages need
special casing here since their -dev packages have a different
name. Maybe this should be fixed in the packages themselves.
The packages affected are gmp5 (gmp-dev) and mpfr3 (mpfr-dev).
* Non-essential: also added per-package logging to cut down on the output.
I'm attaching a rough diff against your x86 conf files and the two
scripts. Please let me know how you want to proceed with integrating
I wonder how we can test packages for their sanity properly after
we have built them. The usual way is running the testsuite (make check)
after compilation. Obviously this won't work when cross-compiling to
a different machine architecture. Any ideas?
Dipl.Ing.(BA) Leslie P. Polzer | CTO - PORT ZERO
Softwareentwicklung & IT Engineering
Tel.: +49 (0)30 - 69 200 907 - 0
Fax: +49 (0)30 - 69 200 907 - 9
Received on Fri Oct 25 2013 - 14:30:48 UTC