This is the mail archive of the
mailing list for the binutils project.
Re: Linking EFI applications with x86_64-pc-mingw32-ld
On 04/02/2012 03:50 PM, Kai Tietz wrote:
2012/4/2 Andreas Schwab<email@example.com>:
The vendor part of the triplet is just for information.
I don't know the answer to your question, but at the very least, you
should try using the x86_64-w64-mingw32 target. Notice that the
middle part of the triplet is not -pc-.
Right, the vendor-part in triplet for binutils is just for
information. But yes, it is possible to link EFI COFF code by it.
You need to specify the proper entry-point (by -e option) and you need
to set the proper sub-system There are pre-defined aliases for
So can specify subsystem by ld's option '-subsystem=". The argument
of this option is either one of the strings above or a number.
Thanks, this is getting me closer to what I want. Now, I have an object
file that just has a .text section, but, when linked with
x86_64-w64-mingw32-ld -e main -subsystem=10, a .idata section is added.
Additionally, .text is extended with several zeros (for alignment I'm
guessing?) and the symbol table is claiming there's a (completely
0-filled) __CTOR_LIST__ and __DTOR_LIST__ in the middle of the added 0s.
Can the added section and padding be safely removed?