Compile Wine 0.9.48 assembly error

Questions about Wine on Linux
Locked
RageRiot
Newbie
Newbie
Posts: 4
Joined: Sat Jan 18, 2014 12:35 am

Compile Wine 0.9.48 assembly error

Post by RageRiot »

I am having trouble compiling Win 0.9.48, I'm getting assembly errors.

I need this paticular version of wine because a patch was created to correct this issue

Here is the output for ./configure http://pastebin.com/5pev4LSf
Here is as much as the output from the attempted compile http://pastebin.com/wuVYYWbi

at first ./confiure would return this

Code: Select all

root@ns212765:/home/d2admin/winesrc/wine-0.9.48# ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking whether make sets $(MAKE)... yes
checking for gcc... gcc -m32
checking for C compiler default output file name... 
configure: error: C compiler cannot create executables
See `config.log' for more details.
root@ns212765:/home/d2admin/winesrc/wine-0.9.48# 
But using

Code: Select all

./configure --host=i686-unknown-linux-gnu --build=i686-unknown-linux-gnu   --target=i686-unknown-linux-gnu
or

Code: Select all

setarch i386 ./configure
seemed to work as seen in the paste bin.

I also tried the script ./tools/wineinstall but get the same error about the compiler executeable here is a pastebin of that log http://pastebin.com/NtKspL6i

So it's a debian system with no X interface. anyone familiar with d2gs thats refered to in the first link at the top will know its a windowless process. ie works in the background as a windows service.

I can provide any more infomation on request if anyone has any idea how to solve this I'd really appreciate it.
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Re: Compile Wine 0.9.48 assembly error

Post by dimesio »

It it unlikely you will be able to compile a version that old on a modern system. However, according to comment 38 in the bug report, the patch does work with 1.3.6. You might have better luck building that.
RageRiot
Newbie
Newbie
Posts: 4
Joined: Sat Jan 18, 2014 12:35 am

Re: Compile Wine 0.9.48 assembly error

Post by RageRiot »

thanks for you reply.

I've been trying since with ver 1.3.6 but still not luck. I get the same esort of errors

Things I know I've done are

Code: Select all

apt-get build-dep wine
and

Code: Select all

apt-get build-dep wine:i386 
the latter doesnt find anything

Code: Select all

E: Unable to find a source package for wine:i386
I still get these similar errors

Code: Select all

{standard input}: Assembler messages:
{standard input}:37: Error: operand type mismatch for `push'
{standard input}:39: Error: bad register expression
{standard input}:39: Error: register save offset not a multiple of 8
{standard input}:40: Error: operand type mismatch for `push'
{standard input}:42: Error: bad register expression
{standard input}:49: Error: operand type mismatch for `pop'
{standard input}:50: Error: bad register expression
{standard input}:52: Error: operand type mismatch for `pop'
{standard input}:53: Error: bad register expression
make[1]: *** [interlocked.o] Error 1
make[1]: Leaving directory `/home/d2admin/winesrc/wine-1.3.6/libs/port'
make: *** [libs/port] Error 2
root@ns212765:/home/d2admin/winesrc/wine-1.3.6# 
RageRiot
Newbie
Newbie
Posts: 4
Joined: Sat Jan 18, 2014 12:35 am

Re: Compile Wine 0.9.48 assembly error

Post by RageRiot »

I've had some futher attempts.

I managed to get the compile to run using:

Code: Select all

./configure --enable-win64
make
but I dont think it build correctly despite it saying complete ( took about 10 - 15 mins )

Code: Select all

                                 .........................
error loading char 249 - bad news!
warning: MS Sans Serif 20: missing glyph for char 0e5a
error loading char 250 - bad news!
warning: MS Sans Serif 20: missing glyph for char 0e5b
error loading char 251 - bad news!
warning: MS Sans Serif 20: missing glyph for char f8c5
error loading char 252 - bad news!
warning: MS Sans Serif 20: missing glyph for char f8c6
error loading char 253 - bad news!
warning: MS Sans Serif 20: missing glyph for char f8c7
error loading char 254 - bad news!
warning: MS Sans Serif 20: missing glyph for char f8c8
error loading char 255 - bad news!
when I try to run an app with win I get

Code: Select all

segmentation fault
for anything I try. eg. clock, notepad

I atill have no desktop enviroment but from what I understand a segmentation fault is a programming fault ( proably a build fault/ dependancy problem )

Questions:
is it nore working because of the error I receive when I run ./tools/wineinstall?

Code: Select all

configure: error: Cannot build a 32-bit program, you need to install 32-bit development libraries.
Would I have more luck installing ubuntu and trying to compile it on that ?

is it posible to compile it on my desktop running linux mint and make a .deb ?
oiaohm
Level 8
Level 8
Posts: 1020
Joined: Fri Feb 29, 2008 2:54 am

Re: Compile Wine 0.9.48 assembly error

Post by oiaohm »

RageRiot I guess you can build current day wine and have it work.

The simple reality building old versions of wine on new systems by taking the archives is next to impossible.

RageRiot you will require the full wine git tree to be able to build old version with new tools. You will need all the fixed that have been applied over the years to fix up wine to build with current tools.

Yes asm in places has changed formats and bison has changed formats and other things. Fairly much anything before wine 1.6 is very hard to build.
{standard input}: Assembler messages:
{standard input}:37: Error: operand type mismatch for `push'
{standard input}:39: Error: bad register expression
{standard input}:39: Error: register save offset not a multiple of 8
{standard input}:40: Error: operand type mismatch for `push'
{standard input}:42: Error: bad register expression
{standard input}:49: Error: operand type mismatch for `pop'
{standard input}:50: Error: bad register expression
{standard input}:52: Error: operand type mismatch for `pop'
{standard input}:53: Error: bad register expression
This is modern gcc and binutils. Old gcc and binutils never bothered about these code errors.

Sorry you need to use older gcc and binutils to avoid that error or find where in wine git that file was fixed. We don't fix up old code bases of Wine.

Do you have a log of the application running with the latest 1.7.x yes we will work with more modern wine and attempt to make it work.

Reality here if the patch does not get mainlined sooner or latter the wine it depends on will not work in newer distributions then you are stuffed.
RageRiot
Newbie
Newbie
Posts: 4
Joined: Sat Jan 18, 2014 12:35 am

Re: Compile Wine 0.9.48 assembly error

Post by RageRiot »

thanks for replying olaohm but unfortuantly it stll fail to install, I did a git clone of the wine souce tree using this guide http://wiki.winehq.org/GitWine
then made the changes to the neccessary file.

here is a paste bin of the output from

Code: Select all

./tools/wineinstall
http://pastebin.com/X9NnJZRq

I dont know if this will help but here is a pastbin of the CPU info since it has somthing to do with the CPU running code..
http://pastebin.com/bFyjCM7a

I'm not very knowledgeable when it comes to programming or compiling but I'm hanging on I'll only learn by trying stuff .. and breaking it so if I'm doing somthing stupid or looking at it the wrong way that feedback would be valueable.

also I wondered if compiling it on a 32bit machine would give me the same results, it did compile and took alot longer of course with it ibeing a laptop.
would I be able to move that to the server and run that ? maybe make a .deb
oiaohm
Level 8
Level 8
Posts: 1020
Joined: Fri Feb 29, 2008 2:54 am

Re: Compile Wine 0.9.48 assembly error

Post by oiaohm »

For dependencies and some build instructions
http://wiki.winehq.org/WineOn64bit for 64 bit systems
http://wiki.winehq.org/Recommended_Packages for 32 bit system

http://www.winehq.org/docs/wineusr-guid ... ine-source

RageRiot ./tools/wineinstall is very rarely used by anyone. As you can see in the documentation everywhere recommends the multi line ./configure and so on solutions.

I am coming to the horrible possibility that its you gcc/binutils combination. Remember what I said that older code bases will not always built with newer gcc or binutils. This sometimes even applies to the trunk.

gcc --version and ld --version please. If you have really new compliers this could a problem.
Locked