OK, I solved it. I installed a complete set of kernel headers from my kernel source tree to the musl/include directory as follows:
In the Kernel source: make mrproper make INSTALL_HDR_PATH=dest headers_install find dest/include \( -name .install -o -name ..install.cmd \) -delete cp -rv dest/include/* /opt/musl/include The find... is suggested by LFS to remove some hidden files used by the kernel developers. and not needed Back in S6-linux-utils: make clean make and it compiles cleanly. The clue was in your request: http://www.openwall.com/lists/musl/2013/10/07/1 Sorry for the noise, google wasn't my friend until I knew what to ask for :) ToF. On 2 May 2014 19:03, Laurent Bercot <[email protected]> wrote: > On 02/05/2014 16:29, TheOldFellow wrote: >> >> I'm having trouble with this. The system is LFS, glibc based, but I have >> installed musl in /opt. > > > I'll assume you have set conf-cc and conf-ld to musl-gcc with the correct > options, then. > > > >> I found that I had to add $SP_ROOT/usr/include to to path-include. > > > That sounds very strange. What was the error that made you do that ? > And are you using flag-slashpackage or not ? > > > >> s6-hiercopy.c:(.text+0xac): undefined reference to `__xmknod' >> >> which I think is a known problem with musl. I tried adding, >> $SP_ROOT/usr/lib to path-library, but this give even more errors. > > > The undefined reference error doesn't happen to me. It sounds like > you're using glibc include files with musl object files. Check your > musl installation, and your conf-cc and conf-ld files. > > > >> I have built it against glibc, allstatic and -static, and everything seems >> OK, but I don't trust glibc linked static. > > > flag-allstatic will work with glibc: you'll get the static skalibs with > the dynamic glibc. gcc -static in conf-ld, however, is a no-no. > flag-allstatic + musl-gcc -static should give you a static library linked > against musl. > > -- > Laurent >
