This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

IA-64 PE+/COFF help needed


Hi all,

In order to port GMP (the GNU multiple-precision arithmetic
library) to a new platform, I need a little advice on
constructing binutils and BFD.

I'm trying to build binutils which can deal with 64-bit
Windows object files.  This means, first of all, getting a
BFD library that can read and write the Win64 PE+/COFF
format.  Since Cygwin doesn't yet run on Win64, these
would be cross-compilation tools.  (The 32-bit binutils
which come with Cygwin don't recognize Win64 PE+ files.)

I'm at a loss figuring out whether BFD already has IA-64 PE+
support, and if so, how to enable it.  There's a lot of code
in peXXgen.c, coff-ia64.c, peicode.h, and elsewhere that
refers to the Windows IA-64 PE+ ("COFF_WITH_pep") object
file format.  efi-app-ia64.c looks like it contains the
basic #defines.

But I don't see anything in configure, config.bfd, or
Makefile.am that mentions a Win64 target!  What build
flags do I specify to get an IA-64 PE+ BFD?

So then these are my questions:
  * How exactly does one build a BFD library that can
    handle Win64 (IA-64 PE+/COFF) object files and
    executables?  (The --host would be a standard x86
    Cygwin, but the --target is IA-64.)
  * How then does one build (cross-compiling) binutils
    for this platform?  I'd need at least
        * nm
        * objdump
        * dlltool
        * gas for IA-64
    in order to run the configure and make sequence for GMP.

Thanks for any help.

- David Librik
librik@panix.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]