WineHQ
Wine Forums

Board index » WineHQ » Wine Help




 Page 1 of 1 [ 13 posts ] 



 
Author Message
 Post subject: how to cross-compile
 Post Posted: Tue Aug 30, 2011 2:41 am 
Offline
Level 2
Level 2

Joined: Fri Mar 04, 2011 10:20 pm
Posts: 19
Location: China
I want to compile wine to another architecture,such as ARM,MIPS,PPC.
But How to do this ?
Thank you in advance.


Top 
 Post subject: Re: how to cross-compile
 Post Posted: Tue Aug 30, 2011 8:43 am 
Offline
Moderator
Moderator

Joined: Sat Feb 23, 2008 2:29 pm
Posts: 6605
yaocong wrote:
I want to compile wine to another architecture,such as ARM,MIPS,PPC. But How to do this ?

It's not recommended to do so: http://wiki.winehq.org/ARM
Also what exactly are you trying to archive with it? Wine does not emulate CPU, this means that on not x86 platform you won't be able to run native windows applications.


Top 
 Post subject:
 Post Posted: Tue Aug 30, 2011 12:51 pm 
Offline
Level 2
Level 2

Joined: Fri Aug 05, 2011 3:26 pm
Posts: 13
Vitaliy, perhaps you prematurely discourage him from playing around with cross compiling. Why not to give him a chance? No matter if he starts asking "vain" questions, in the below topic this helped to detect a few issues in winegcc implementation. Wine can gain some benefit.
yaocong
Wine is reported by some users to be compiled for ARM target on a x86 host.
See this topic:
viewtopic.php?t=10535

In particular, the posts by KenSharp and André H.
Putty rinning in qemu: http://dawncrow.de/arm4.png

It'd be better to carry on the discussion in that topic and close this one.


Top 
 Post subject: how to cross-compile
 Post Posted: Tue Aug 30, 2011 4:06 pm 
Offline
Moderator
Moderator

Joined: Wed Apr 27, 2011 11:01 pm
Posts: 1153
On 8/30/11 10:51 AM, Bruni wrote:
Quote:
Vitaliy, perhaps you prematurely discourage him from playing around with cross compiling.
Not necessarily. Some folks are looking for a solution to run their
'favorite' Wine programs on non-X86 platforms that are compiled to run
on an x86 platform. Wine cannot 'make this happen' and never, ever
will. You need some sort of (platform CPU) <-> x86 processor emulator.
This is outside of the scope of the Wine project, but for an example
take a look at the Darwine project (if it is still available on
Sourceforge) for an example on how to try.

Quote:
Why not to give him a chance? No matter if he starts asking "vain" questions, in the below topic this helped to detect a few issues in winegcc implementation. Wine can gain some benefit.
yaocong
Wine is reported by some users to be compiled for ARM target on a x86 host.
See this topic:
viewtopic.php?t=10535
Work is ongoing to make Wine compile on ARM, this is true.

Quote:
In particular, the posts by KenSharp and André H.
Putty rinning in qemu: http://dawncrow.de/arm4.png
Qemu is an emulator, if I recall correctly.

Quote:
It'd be better to carry on the discussion in that topic and close this one.

Yes.

James


Top 
 Post subject:
 Post Posted: Tue Aug 30, 2011 7:07 pm 
Offline
Level 2
Level 2

Joined: Fri Mar 04, 2011 10:20 pm
Posts: 19
Location: China
I want to run x86 binaries in QEMU and redirect the win32api to the wine as a BACKEND on ARM/MIPS platform.

The major modification for the Wine is located at :
1,WINEGCC
2,WINEBUILD
3,NTDLL

Currently I am using a mips64 machine to do the compiling ,so compile job is smooth,but the modification must be done before the compiling process can successfully finished.

Any good suggestion will be appreciated! And I will contribute the the total project to wine.Thank you.


Top 
 Post subject:
 Post Posted: Tue Aug 30, 2011 7:10 pm 
Offline
Level 2
Level 2

Joined: Fri Mar 04, 2011 10:20 pm
Posts: 19
Location: China
By the way,the Wine runs natively on the ARM/MIPS ,not in the Qemu sandbox.


Top 
 Post subject:
 Post Posted: Wed Aug 31, 2011 3:54 am 
Offline
Level 2
Level 2

Joined: Fri Aug 05, 2011 3:26 pm
Posts: 13
You probably did not note the trace on that screenshot (http://dawncrow.de/arm4.png) and that running putty had resulted from cross compiling by means of winelib. André launched putty binary in qemu emulating an arm machine so that it was convenient for him to take a screenshot, if I got his explanations right.
Code:
dawncrow@qemu-test:~$ uname -m
armv5tejl
dawncrow@qemu-test:~$


Please make it clear:
1. Just what OS architecture do you want to run in qemu?
2. Just what architecture do you want to run wine compiled for?
3. what does run what? Is it an ARM version of OS, which runs an ARM version of wine which, in turn, runs ARM version of qemu which, in turn, runs x86 binaries, or anything else?


Top 
 Post subject:
 Post Posted: Wed Aug 31, 2011 8:44 pm 
Offline
Level 2
Level 2

Joined: Fri Mar 04, 2011 10:20 pm
Posts: 19
Location: China
Sorry I have not make the sense clear!

I want to run wine on MIPS architecture in Linux,not by Qemu. and the Qemu is also running on MIPS and just emulates the x86 instructions to MIPS. This is the basic scenario:the two kits are running independently on MIPS.

What I want to do is to run x86 instructions in qemu and the winapi calls will be directed to wine .So the program flow is like this:

win32 applications(X86) -> qemu (translate)-> wine (win32 api)


Top 
 Post subject:
 Post Posted: Thu Sep 01, 2011 2:50 am 
Offline
Level 2
Level 2

Joined: Fri Aug 05, 2011 3:26 pm
Posts: 13
Darwine is almost just what you need, excepting the fact that it is meant to run on PPC instead of MIPS and very far from being complete.

The most easy way of running x86 binaries on mips is qemu, any other ways will require many months of hard work.


Top 
 Post subject:
 Post Posted: Thu Sep 01, 2011 11:51 pm 
Offline
Moderator
Moderator
User avatar

Joined: Wed May 14, 2008 11:44 am
Posts: 1164
yaocong wrote:
win32 applications(X86) -> qemu (translate)-> wine (win32 api)


That's going to be tricky to get working.

I've seen this kind of thing done before, so you're not crazy, but
it is a lot of work.

Good luck!


Top 
 Post subject:
 Post Posted: Sat Sep 03, 2011 7:56 am 
Offline
Moderator
Moderator
User avatar

Joined: Sun Dec 07, 2008 8:33 am
Posts: 202
Location: Germany
Bruni wrote:
Darwine is almost just what you need, excepting the fact that it is meant to run on PPC instead of MIPS and very far from being complete.

The most easy way of running x86 binaries on mips is qemu, any other ways will require many months of hard work.


Darwine only tried to do that but on PPC the endianess was the problem.
i'd like to see that feature for my ARM port...

Dan, as i understand him he only got it working (maybe), but where did you already seen that?


Top 
 Post subject:
 Post Posted: Sat Sep 03, 2011 12:52 pm 
Offline
Level 5
Level 5

Joined: Mon Nov 24, 2008 8:10 am
Posts: 336
Transitive technology has such technology. Years ago they worked together with Transgaming to run games on non-x86 architectures (they may have used this on PowerPC and consoles). I don't know how well it worked. Later on Transitive also provided this technology to Apple for running PowerPC OSX apps on x86 I believe.


Top 
 Post subject:
 Post Posted: Sat Sep 03, 2011 1:14 pm 
Offline
Level 2
Level 2

Joined: Fri Aug 05, 2011 3:26 pm
Posts: 13
The sad truth is that releasing transitive technology under the FOSS license conditions is hardly probable in the foreseeable future. I'm inclined to think that Wine developers will have translating wrappers for ARM for all ~700 x86 instructions before that technology becomes free/open software :D


Top 
Display posts from previous:  Sort by  
 
 Page 1 of 1 [ 13 posts ] 




Board index » WineHQ » Wine Help


Who is online

Users browsing this forum: No registered users and 17 guests

 
 

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: