Wine on amd64 in 32 bit jail

Julian Elischer julian at elischer.org
Thu Nov 19 07:19:15 UTC 2009


xorquewasp at googlemail.com wrote:
> Hello.
> 
> I've done a lot of reading on this problem and don't understand why what I have
> doesn't work.
> 
>   http://wiki.freebsd.org/Wine
> 
> I have an entirely 32 bit jail, created by cross-compiling the world with
> TARGET=i386 and creating a jail from DESTDIR.
> 
> The jail appears to be fully functional - all programs appear to work and
> the compiler produces i386 binaries.
> 
> 'uname' has been configured to identify itself as 'i386', so even compiling
> programs from source works (autoconf correctly recognises the jail system
> as i386, etc).
> 
> However, installing the wine port and attempting to do anything with it
> results in:
> 
>   $ wine hello.exe
>   Bus error: 10 (core dumped)
> 
> The program will immediately crash in all cases.
> 
>   $ winecfg
>   Bus error: 10 (core dumped)
> 
> According to every bit of documentation I can find online, this should
> work fine. Any idea what's gone wrong here?

Wine is an exceptional bit of software, in many ways.
One way it is exceptional is that it uses the system in a number of
ways that nothing else does. For example it sets various special 
segment register settings and defines several different
segments on the LDT.  This is something that is different to some 
extent between i386 and amd64 and it is possible that
the code for 386 LDT syscalls under amd64 may not work correctly.
nothing else would test this.

> 
> xw
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"



More information about the freebsd-hackers mailing list