Building Wine 6.0 with musl

Questions about Wine on Linux
Locked
bovis
Newbie
Newbie
Posts: 1
Joined: Thu Mar 11, 2021 9:47 am

Building Wine 6.0 with musl

Post by bovis »

I'm trying to build Wine 6.0 on Alpine Linux, a musl-based system. My situation is that I'm running a 32-bit chroot inside a 64-bit laptop primary system. It's in the 32-bit chroot that I'm trying to compile Wine 6.0.

During make, I get this segfault:

Code: Select all

tools/winebuild/winebuild -w --def -o dlls/kernel32/libkernel32.def --export dlls/kernel32/kernel32.spec
make: *** [Makefile:67417: dlls/kernel32/libkernel32.def] Segmentation fault
Running gdb --args ./tools/winebuild/winebuild -w --def -o dlls/kernel32/libkernel32.def --export dlls/kernel
32/kernel32.spec
to debug gets me this result:

Code: Select all

Program received signal SIGSEGV, Segmentation fault.
0xf7fc2cdc in do_relocs (dso=dso@entry=0xf7ffca20 <app>, rel=0x56555914, rel_size=2104, stride=2)
    at ldso/dynlink.c:470
470   ldso/dynlink.c: No such file or directory.
Alpine's current package is 4.0.3 and was built using three patches (https://git.alpinelinux.org/aports/tree ... e?h=master). During this build of 6.0, I'm using an updated no-pie.patch and winhlp32-flex.patch, including an extra for loop during make that has helped me successfully compile 5.0 on this same computer. Other than the version change, my APKBUILD file is similar to the file for 4.0.3 in the git linked above:

Code: Select all

for k in $(grep -v ^# <<'EOF'
server
loader
tools/widl
tools/winebuild
tools/winegcc
tools/wmc
tools/wrc
tools/sfnt2fon
EOF
); do
sed -e '/^LDFLAGS =/c\LDFLAGS = -no-pie' -i ${k}/Makefile;
done
For 6.0, I've tried compiling with and without the for; with and without the patch files; with and without both the for and patches; and attempting all those scenarios with Wine 6.3 just to see if it made a difference. The result is always the same segfault as printed above.

What can I do additionally to resolve the issue?
Locked