www.digitalmars.com         C & C++   DMDScript  

D.gnu - Semi-off topic: Cross compilation, Pocket PC

reply Peter Mackay <a_pointy_stick.NoJunkMail yahoo.co.uk> writes:
Hello,

I would be very interested in getting D to work as a cross compiler for 
Pocket PC, since at the moment I'm using C++ for Pocket PC and D for 
Windows.

I suspect the path I need to take is something like this:

1. Download and install Cygwin or MinGW, but I don't know which one.
2. Download the GCC sources, but I'm not sure which.
3. Compile GCC on Win32, with "wince-pe" (?) as the target.
4. Download the GDC sources.
5. Compile GDC, with some settings I'm not sure about.

I was wondering if anyone could point me in the right direction for 
this. Are there any good sites or docs I should read? Do I have my steps 
mixed up?

Thank you,

Peter
May 13 2005
next sibling parent reply David Friedman <d3rdclsmail_a t_earthlink_d.t_net> writes:
Peter Mackay wrote:
 Hello,
 
 I would be very interested in getting D to work as a cross compiler for 
 Pocket PC, since at the moment I'm using C++ for Pocket PC and D for 
 Windows.
 
 I suspect the path I need to take is something like this:
 
 1. Download and install Cygwin or MinGW, but I don't know which one.
 2. Download the GCC sources, but I'm not sure which.
 3. Compile GCC on Win32, with "wince-pe" (?) as the target.
 4. Download the GDC sources.
 5. Compile GDC, with some settings I'm not sure about.
 
 I was wondering if anyone could point me in the right direction for 
 this. Are there any good sites or docs I should read? Do I have my steps 
 mixed up?
 
 Thank you,
 
 Peter
One distribution that looks promising is: http://packages.debian.org/testing/devel/pocketpc-gcc http://packages.qa.debian.org/p/pocketpc-gcc.html Even though this is a listed as being for Debian, it could work for win32. You would just need to build the sources yourself rather than install the binaries. I have not seen any good step-by-step instructions for building a cross compiler, but the following script is excellent guide for figuring out how to configure and install the various packages: http://www.libsdl.org/extras/win32/cross/build-cross.sh For more instructions, try googling on "build-cross.sh". The overall steps would be: 1. Install Cygwin or MinGW/MSYS -- Cygwin might have a better chance of working without build glitches. 2. Download the sources (and patches) for pocketpc-gas, pocketpc-binutils, pocketpc-gcc, and pocketpc-sdk. 3. Build the packages in the above order. Some clarifications: * The 'configure' flags for each package will be in the 'debian/rules' files created by the Debian patches. Use these instead of the ones in build-cross.sh. * You might be able to save a step by using the binary pocketpc-sdk package (since it should just be ARM code.) * GDC is built along with GCC. This is explained in the GDC install instructions. * Phobos will require some customization (see the "Building GDC on AIX PowerPC" thread.) I think I will try this out myself even though I don't have any PocketPC hardware at the moment. If I manage to produce a working compiler, I'll post a script for it. David
May 13 2005
parent reply Peter Mackay <a_pointy_stick.NoJunkMail yahoo.co.uk> writes:
Thank you David for your detailed reply. I'll also give it a go some 
time today or tomorrow and post back on the group.

I'm kind of busy with real life stuff at the moment... :-/

Thanks again,

Peter

 One distribution that looks promising is:
 
 http://packages.debian.org/testing/devel/pocketpc-gcc
 http://packages.qa.debian.org/p/pocketpc-gcc.html
 
 Even though this is a listed as being for Debian, it could work for 
 win32.  You would just need to build the sources yourself rather than 
 install the binaries.
 
 I have not seen any good step-by-step instructions for building a cross 
 compiler, but the following script is excellent guide for figuring out 
 how to configure and install the various packages:
 
 http://www.libsdl.org/extras/win32/cross/build-cross.sh
 
 For more instructions, try googling on "build-cross.sh".
 
 The overall steps would be:
 
 1. Install Cygwin or MinGW/MSYS -- Cygwin might have a better chance of 
 working without build glitches.
 
 2. Download the sources (and patches) for pocketpc-gas, 
 pocketpc-binutils, pocketpc-gcc, and pocketpc-sdk.
 
 3. Build the packages in the above order.
 
 Some clarifications:
 
 * The 'configure' flags for each package will be in the 'debian/rules' 
 files created by the Debian patches.  Use these instead of the ones in 
 build-cross.sh.
 
 * You might be able to save a step by using the binary pocketpc-sdk 
 package (since it should just be ARM code.)
 
 * GDC is built along with GCC.  This is explained in the GDC install 
 instructions.
 
 * Phobos will require some customization (see the "Building GDC on AIX 
 PowerPC" thread.)
 
 I think I will try this out myself even though I don't have any PocketPC 
 hardware at the moment.  If I manage to produce a working compiler, I'll 
 post a script for it.
 
 David
 
May 16 2005
parent Peter Mackay <a_pointy_stick.NoJunkMail yahoo.co.uk> writes:
Hello,

Just to post a heads-up on my progress so far. It seems that building a 
cross-compiler with "arm-wince-pe" as the target is a definite uphill 
struggle.

I've seen something here:

	http://win-ce.voxware.com:28575/Development%20Tools/

But it's an old release, 2003. There is a crossgcc mailing list 
available here, in which the chap Craig Vanderborgh from voxware posted 
about the development of it:

	http://sources.redhat.com/ml/crossgcc/

It's also a newsgroup on gmane.org if you prefer newsgroups to mailing 
lists.

	news:news.gmane.org/gmane.comp.gcc.cross-compiling

At the moment I'm not too confident my the ability to get a modern GCC 
version with GDC compiling for pocket pc. Not with the limited spare 
time I have available.

Peter

Peter Mackay wrote:
 Thank you David for your detailed reply. I'll also give it a go some 
 time today or tomorrow and post back on the group.
 
 I'm kind of busy with real life stuff at the moment... :-/
 
 Thanks again,
 
 Peter
 
 One distribution that looks promising is:

 http://packages.debian.org/testing/devel/pocketpc-gcc
 http://packages.qa.debian.org/p/pocketpc-gcc.html

 Even though this is a listed as being for Debian, it could work for 
 win32.  You would just need to build the sources yourself rather than 
 install the binaries.

 I have not seen any good step-by-step instructions for building a 
 cross compiler, but the following script is excellent guide for 
 figuring out how to configure and install the various packages:

 http://www.libsdl.org/extras/win32/cross/build-cross.sh

 For more instructions, try googling on "build-cross.sh".

 The overall steps would be:

 1. Install Cygwin or MinGW/MSYS -- Cygwin might have a better chance 
 of working without build glitches.

 2. Download the sources (and patches) for pocketpc-gas, 
 pocketpc-binutils, pocketpc-gcc, and pocketpc-sdk.

 3. Build the packages in the above order.

 Some clarifications:

 * The 'configure' flags for each package will be in the 'debian/rules' 
 files created by the Debian patches.  Use these instead of the ones in 
 build-cross.sh.

 * You might be able to save a step by using the binary pocketpc-sdk 
 package (since it should just be ARM code.)

 * GDC is built along with GCC.  This is explained in the GDC install 
 instructions.

 * Phobos will require some customization (see the "Building GDC on AIX 
 PowerPC" thread.)

 I think I will try this out myself even though I don't have any 
 PocketPC hardware at the moment.  If I manage to produce a working 
 compiler, I'll post a script for it.

 David
May 21 2005
prev sibling parent reply "Andrew Fedoniouk" <news terrainformatica.com> writes:
Peter, would you please so kind and drop me a
message (or in this group) if you will get some results.
I am interested in porting Harmonia on PocketPC.
(Symbian is also interesting)
Thanks in advance.

Andrew.


"Peter Mackay" <a_pointy_stick.NoJunkMail yahoo.co.uk> wrote in message 
news:d61psd$1rrd$1 digitaldaemon.com...
 Hello,

 I would be very interested in getting D to work as a cross compiler for 
 Pocket PC, since at the moment I'm using C++ for Pocket PC and D for 
 Windows.

 I suspect the path I need to take is something like this:

 1. Download and install Cygwin or MinGW, but I don't know which one.
 2. Download the GCC sources, but I'm not sure which.
 3. Compile GCC on Win32, with "wince-pe" (?) as the target.
 4. Download the GDC sources.
 5. Compile GDC, with some settings I'm not sure about.

 I was wondering if anyone could point me in the right direction for this. 
 Are there any good sites or docs I should read? Do I have my steps mixed 
 up?

 Thank you,

 Peter 
May 15 2005
next sibling parent reply John Reimer <brk_6502 yahoo.com> writes:
Andrew Fedoniouk wrote:
 Peter, would you please so kind and drop me a
 message (or in this group) if you will get some results.
 I am interested in porting Harmonia on PocketPC.
 (Symbian is also interesting)
 Thanks in advance.
 
 Andrew.
 
Ooooo... that would be nice! I wish we could do that for Palm! -JJR
May 15 2005
parent reply "Andrew Fedoniouk" <news terrainformatica.com> writes:
 Ooooo... that would be nice!  I wish we could do that for Palm!
Only after when these smart guys will finally decide what they are building... Last time they said that PalmOS will be just sort of Linux. Before they bought BeOS... They might end up with WinCE one day, who knows, as Symbian already won over the Palm in Europe. Seriously speaking - PalmOS with its current memory model will never run even D console app. Andrew.
May 15 2005
parent John Reimer <brk_6502 yahoo.com> writes:
Andrew Fedoniouk wrote:
Ooooo... that would be nice!  I wish we could do that for Palm!
Only after when these smart guys will finally decide what they are building... Last time they said that PalmOS will be just sort of Linux. Before they bought BeOS... They might end up with WinCE one day, who knows, as Symbian already won over the Palm in Europe. Seriously speaking - PalmOS with its current memory model will never run even D console app. Andrew.
Alas, too true. :-( If only they had succeeded with Cobalt. It would have been a powerful platform to program on (threading, 32-bit ARM clean, GL etc). I always have preferred the simple Palm interface to Windows CE style; but the way things are going, things don't look promising for Palm. That's sad. Linux may be a good try for them, but there are platforms out there already that are tackling that market. Sharp Zaurus... now that ones nice! I'd love to see D and Harmonia working on that one. Unfortunately, it's market share is fairly meager. Another one to watch... Amiga DE: faultered for several years (or more accurately, didn't do anything), but looks like it /could/ make a comeback with some new potent financial backing. D would sit beautifully with it. -JJR
May 15 2005
prev sibling parent Peter Mackay <a_pointy_stick.NoJunkMail yahoo.co.uk> writes:
Sure thing. I've not tried anything yet because I've been away from the 
computer all weekend.

Peter

Andrew Fedoniouk wrote:
 Peter, would you please so kind and drop me a
 message (or in this group) if you will get some results.
 I am interested in porting Harmonia on PocketPC.
 (Symbian is also interesting)
 Thanks in advance.
 
 Andrew.
 
 
 "Peter Mackay" <a_pointy_stick.NoJunkMail yahoo.co.uk> wrote in message 
 news:d61psd$1rrd$1 digitaldaemon.com...
 
Hello,

I would be very interested in getting D to work as a cross compiler for 
Pocket PC, since at the moment I'm using C++ for Pocket PC and D for 
Windows.

I suspect the path I need to take is something like this:

1. Download and install Cygwin or MinGW, but I don't know which one.
2. Download the GCC sources, but I'm not sure which.
3. Compile GCC on Win32, with "wince-pe" (?) as the target.
4. Download the GDC sources.
5. Compile GDC, with some settings I'm not sure about.

I was wondering if anyone could point me in the right direction for this. 
Are there any good sites or docs I should read? Do I have my steps mixed 
up?

Thank you,

Peter 
May 16 2005