Wine on Sparc

Robert Lunnon bobl at optushome.com.au
Wed May 25 09:06:37 CDT 2005


On Tuesday 24 May 2005 05:56, Eric Frias wrote:
> Chuck Hall wrote:
> > I should have mentioned what tools I'm using and the why I sent the
> > patch. I am using the native Sun assembler and linker.  The Sun assembler
> > does not understand the .previous so that is the reason for the patch.
>
> Makes sense.  If you get the Sun assembler to work, we should probably
> make an autoconf test to check which assembler gcc is using.  Heck, if
> you find that Sun's assembler doesn't work, it would be nice to have an
> autoconf check to put up an error.  I don't know of a good way to do
> this check (aside from testing whether it understands .previous).
>
> > Using the binutils from www.blastwave.org I managed to get only the first
> > 5 files of 'make depend' to compile before it had problems with
> > assembler. Seems to be easier to use the native version.
>
> Wine's README says:
> ===
> Solaris info:
>    You will most likely need to build Wine with the GNU toolchain
>    (gcc, gas, etc.). Warning : installing gas does *not* ensure that it
>    will be used by gcc. Recompiling gcc after installing gas or
>    symlinking cc, as and ld to the gnu tools is said to be necessary.
> ===
> If you want to compile with the native assembler, you may be in
> uncharted territory.  I've had success with the combination of
> binutils-2.14 and gcc-3.4.2.
>
> Eric

You all surmise correctly, I don't have a SPARC box so I haven't tested SPARC 
compatibility though the patches do handle some SPARC things. Since the API 
is the same all should work OK as far as syscalls go. 
Wine doesn't build out of the box though!, there are a couple of extra patches 
that you need to implement SYSV native threads on Solaris 10 or above and 
some stubs to make some other things work properly (like disabling the 
debugger and executing libs across a symlink containing a colon ).   I 
publish a kit of patches with each binary I publish but I haven't republished 
the binary since the latest putback, many of them have now been rolled into 
CVS wine and are redundant. Some patches may never get in because Alexandre 
already rejected them.  I think there are only one or two essential ones now. 
(send me an e-mail)

Good idea about the autoconf test for gas support, That's not hard to do, so  
I'll contribute this ASAP. Sun's as doesn't work (on x86 anyway) the operand 
orders are different to gas so it won't assemble as expected.

You don't need gnu ld at all, x86 Solaris ld works fine. My GCC is built to 
use gas + Solaris ld so I can use it to build kernel modules. Aside from 
libtool feeding it duplicate libraries in kde (which solaris ld doesn't like 
at all) I rarely have problems with that configuration. I'd recommend this 
gcc config.


Under x86 Solaris wine works pretty much on a Par with Linux, I even had a 
reported Success with Lotus Notes which was reported broken for Linux.





More information about the wine-devel mailing list