[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Building latest snapshot[with Cygwin]



Greetings,

Just for Interest, I have successfully Built both Clean (No RTEMS) and RTEMS
Specific versions of GCC 2.95.1 under Cygwin without any major hitches.

I have Built
	M68k-coff
	SH-ELF
	M68K-rtemself
	SH-rtemself

And they seem to work just fine.

One Question David, I can't add both your Coldfire Fixes and the RTEMS
patches into BINUTILS at the same time.  Is there any way around this ?

RTEMS compiles just fine, except for that annoying TERMINATE problem. when
checking the compilers.  I Butchered the RTEMS files around it temporarily
(Faked the Response to YES this is a cross compiler), But this is NOT good
enough.

I REALLY want this bug with detecting foreign executables fixed, as it is
extremly anoying, as not only does it think it can run it, it ,makes the
script think it is NOT a cross compiler, which breaks the build badly.
Anything I can do to help, let me know.

I Did most of what you did, but didn't install PERL..Is it required, I saw a
message saying it was missing, but nothing seemed to hicup ??

I have actually started writing a new insert to the Getting Started Guide to
cover the CYGWIN compile end, but am waiting for CYGWIN 21b to be released.
Are you (or anyone else) working on this Doco?? (Don't want to duplicate the
effort).


Anyway, my new SH1 & 68EZ328  ProtoBoards come back from the manufacturer in
about 2 weeks (Still designing the Coldfire 5206e Board), so hope to have
RTEMS fired up and cooking on them soon.

Happy RTEMSing,.

Mark Farnan
Director/Engineer
Marlyn Systems
http://www.users.bigpond.net.au/marlyn/




> -----Original Message-----
> From: owner-rtems-snapshots at oarcorp.com
> [mailto:owner-rtems-snapshots at oarcorp.com]On Behalf Of David J. Fiddes
> Sent: Wednesday, 1 September 1999 6:00
> To: Rtems-Snapshots
> Subject: RE: Building latest snapshot[with Cygwin]
>
>
> Hi,
>
> As an excercise I tried to build the latest RTEMS using Cygwin
> Beta 20.1 on
> a new Celeron 466 that had never seen Cygwin before. It worked OK for
> m68k-rtems but choked on m68k-rtemself. This is roughly what I did:
>
> Setting up Cygwin:
>
> 1) Install Cygwin to e:\cygnus
> 2) Add SET CYGWIN=binmode and SET HOME=/home in cygwin.bat
> 3) Run up Cygwin shell and "mount -b e:\\unix /" and "mount -b e:\\cygnus
> /cygnus"
> 4) Created /bin, /tmp, /home /source and /build directories
> 5) Rename sh.exe to sh.exe.old and copy bash.exe to sh.exe and to
> /bin/sh.exe
> 6) Build make-3.77 and manually copied and stripped make.exe to cygwin bin
> directory
> 7) Downloaded and unpacked Cygwin perl 5.005_03.
> 8) Created ~/.bashrc with "export
> PATH=/cygnus/cygwin-b20/H-i586-cygwin32/bin:/gcc-m68k/bin:/usr/local/bin"
> and restarted shell to make Perl available and eradicate DOS paths.
> 9) Configured, built and installed autoconf-2.13 and automake-1.4
> with --prefix=/cygnus/cygwin-b20
> and --exec-prefix=/cygnus/cygwin-b20/H-i586-cygwin32
>
>
> Building the toolset:
>
> 1) Unpack gcc-2.95.1, binutils-2.9.1 and newlib-1.8.1 into /source
> 2) Patch with RTEMS patches as per usual
> 3) configure, build and install binutils with --prefix=/gcc-m68k
> and --target=m68k-rtems(elf)
> 4) Link ../newlib-1.8.1/newlib and libgloss with newlib and libgloss in
> gcc-2.95.1 directory
> 5) Remove libchill, libobjc, libf2c, gcc/f, gcc/ch, gcc/objc,
> gcc/java from
> gcc.
> 6) Configure gcc with --with-newlib, make with "make -k cross" (it choked
> for me on all-target-libiberty) and make -k install (I was too lazy to
> install texinfo like I normally do).
>
> Building RTEMS:
>
> 1) Set CC=gcc with "export CC=gcc"
> 2) Configure RTEMS with
> configure --target=m68k-rtems(elf) --enable-rtemsbsp=gen68360 once I'd
> remembered about the CC=gcc hack it worked as per usual.
> 3) Ran make....after all the usual collection of target compiler check
> semi-failures it actually started building stuff. I ran out of
> time and had
> to go home so I stopped the build half way through the networking I think.
>
> The only unknown failure I came across was that m68k-rtemself
> failed during
> the make time configure when it first tried to see if the compiler worked.
> The configure just stopped dead and hung Cygwin... Haven't
> investigated what
> caused this yet. Plain old m68k-rtems worked just fine.
>
> I've just remembered the --print-file-name hack that we had to put in to
> support Cygwin pre-4.0. This can definitely be removed *if* we
> are moving to
> gcc-2.95.x for the target compiler. It can be removed from host stuff *if*
> we make Cygwin users move to gcc-2.95.1 as their main compiler (a
> move that
> official Cygwin will make in a while anyway). Another hack that
> was added at
> about the same time is that cygwin doesn't support --pipe. As of Beta 20.1
> and egcs-1.1b it does. Not a major thing but worth a cleanup.
>
> With the number of target compiler checks made during an RTEMS build now
> quite large the "Terminate" dialog is really bugging me. I'm
> going to give a
> new cygwinb1.dll a go then try hacking cygwin myself to add a
> check that the
> EXE being passed to CreateProcess() starts with either MZ, NE or
> PE. It may
> be dirty but it should serve our purpose.
>
> Dave
>