Re: WinPhone8 and gcc, any info?
André Hentschel <
nerv@...>
2012-08-16 19:01:06 GMT
Am 06.05.2012 09:09, schrieb Vincent Torri:
> On Sun, May 6, 2012 at 7:54 AM, Max Kellermann <max@...> wrote:
>> On 2012/05/06 05:49, Pavel Pavlov <pavel@...> wrote:
>>> Now, with WinPhone8 it rejects the libs as invalid. Upcoming
>>> VisualStudio and Windows 8 have ARM support out of the box. armasm
>>> (which looks too similar to armasm that comes with arm's dev tools)
>>> lists three types of machine targets: arm, thumb, armce. Any idea
>>> what's different? Do they use different object format (quite
>>> unlikely), or they simply added different CPU id for otherwise
>>> identical objects?
>>
>> Reportedly, WinPhone8 is based on the Windows 8 (desktop) kernel, not
>> on the WinCE kernel. That may make a difference, even if only for the
>> OS declaration. Try objdump on WinPhone7 and 8 (native) binaries and
>> look for differences.
>>
>> Since there is only official support for CIL code on WinPhone, there
>> was no need for native code compatibility.
>
> i don't know if i have already suggested this to you, but you should
> try to contact mingw-w64 developpers to see if you can integrate your
> work in mingw-w64
It seems i wrote the same idea in the wrong thread :)
Here's what i wrote:
> It would be great to generate a mingw-arm that can compile for WoA (Win8 on ARM) and maybe also for CE.
> mostly you need to change the machine type and provide the libs and includes (partly already there for the
x86 stuff).
> WoA makes use of Thumb2, but there's no need to have compiler support for it.
> I'd guess it's not that hard when you're familiar with the code.
> We could make use of that in Wine for example.
> E.g. crosscompiling Wine dlls missing in WoA to add additional functions, or simply crosscompile the testsuite.
> I already was able to run WoA PEs (compiled with VS11beta) in Wine...
> Thoughts?
I had a look at it and tried very hard to get mingw-w64 compiling for arm, but everything seems to target
x86/x64 even if they have the ce libs (mmh, maybe for x86 CE, not sure).
So I bet that it's so much easier to integrate the big library set (the one used for x86) into cegcc and change
the target to IMAGE_FILE_MACHINE_ARMNT.
There are plenty of reasons to do so and much people would use it, so it's not just a fun project.
I'll try that some day, but it's most likely faster if someone else does :)
Anyone?
--
--
Best Regards, André Hentschel
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/