[aarch64-port-dev ] RFR: GensrcMisc.gmk linker issue on windows
Michal Vala
mvala at redhat.com
Thu Mar 9 14:44:31 UTC 2017
On 03/09/2017 09:57 AM, Andrew Haley wrote:
> We shouldn't just change fron CC to LD and back without some kind of
> explanation. Why did one work, and not another?
Build tries to link binary (obj) file to executable (exe).
When CC, it calls CL compiler, which results to total nonsense:
cl
-out:/cygdrive/r/buildroot/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry.exe
/cygdrive/r/buildroot/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry.obj
cl : Command line warning D9035 : option 'o' has been deprecated and
will be removed in a future release
it doesn't event know -out parameter and tries to go with -o and file
"ut:..." so this is totally wrong. Also "genSocketOptionRegistry.obj"
file is already binary.
When LD, then "link" is used and binary obj is correctly linked to
executable:
link
-out:/cygdrive/r/buildroot/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry.exe
/cygdrive/r/buildroot/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry.obj
>
> Andrew.
>
However, as Alex pointed out[1], the patch breaks cross-compilation :/
--
-Michal
[1] -
http://mail.openjdk.java.net/pipermail/aarch64-port-dev/2017-March/004298.html
More information about the aarch64-port-dev
mailing list