[gccsdk] build-it riscos failure on Cygwin

John Tytgat John.Tytgat at aaug.net
Mon Feb 18 14:41:44 PST 2008

In message <BAY101-W20DE95FC7DC0CD4CF77176F0210 at phx.gbl>
          alan buckley <alan_baa at hotmail.com> wrote:

> I've been trying to build the RISC OS distribution on
> Cygwin and failing. I have successfully built the cross
> compiler.
> It is having a problem finding nm-new.exe. The end
> of the build log is:
> # Install the README
> rm -f include/README
> cp /home/alanb/gccsdk/gcc4/srcdir/gcc/../fixincludes/README-fixinc include/README
> chmod a+r include/README
> echo timestamp> stmp-int-hdrs
> creating as
> echo timestamp> stamp-as
> creating collect-ld
> echo timestamp> stamp-collect-ld
> make[2]: *** No rule to make target `../binutils/nm-new.exe', needed by `stamp-nm'.  Stop.
> make[2]: Leaving directory `/home/alanb/gccsdk/gcc4/builddir-riscos/gcc'
> make[1]: *** [all-gcc] Error 2
> make[1]: Leaving directory `/home/alanb/gccsdk/gcc4/builddir-riscos'
> make: *** [all] Error 2
> I've checked the ../binutils directory and it has 'nm-new' without the
> exe extention.
> The makefile in buiddir-riscos/gcc has the following line:
> ORIGINAL_NM_FOR_TARGET = ../binutils/nm-new.exe
> Any ideas on what needs to be changed to get it to work?

The obvious cure for this problem is to change ORIGINAL_NM_FOR_TARGET into

  ORIGINAL_NM_FOR_TARGET = ../binutils/nm-new

But it is not addressing the real issue whatever that might be.

I'm unable to suggest the real fix for this problem without further
investigation and probably more importantly understanding what the rules
are for .exe extension according to cygwin.  Somehow I would naively
expect to see nm-new.exe instead of nm-new as file inside your binutils

BTW, can you look what EXEEXT and EXEEXT_FOR_BUILD are at the end of
builddir-risos/binutils/config.log ? I guess both will be:


while I would expect:


If so, that might be the issue we need to solve.

> As it takes ages to build, is there a simple Makefile modification or
> rename I can do to continue with my current build attempt?

If you would restart the build from scratch you would run into exactly
the same problem again because your gcc/Makefile change is a change in
a build generated file.  So try to restart the existing build by:

  $ cd builddir-riscos
  $ make

If that succeeds, then do "make install" and apart from the RISC OS
specific programs (cmunge, elf2aif, somanager, etc) living in 'riscos'
subdirectory, you already have your own RISC OS compiler built (output
in release-area/full).

BTW, it could be that you bump into the same issue for objdump.  Do the
same hack and see if you can continue again.

John Tytgat, in his comfy chair at home                                 BASS
John.Tytgat at aaug.net                             ARM powered, RISC OS driven

More information about the gcc mailing list