RFR: JDK-8077419: Launcher mapfile fails linking with SS12u4

Erik Joelsson erik.joelsson at oracle.com
Tue Apr 14 07:41:50 UTC 2015


On 2015-04-14 03:44, David Holmes wrote:
> Hi Erik,
>
> On 13/04/2015 11:25 PM, Erik Joelsson wrote:
>> Hello,
>>
>> When building JDK 9 with Solaris Studio 12u4, linking of unpack200 and
>> the java launchers fails due to symbols not being exported. A typical
>> error message looks like this:
>>
>> Undefined first referenced
>>   symbol in file
>> __environ_lock
>> /net/sthserver02/share/sundevtools/devtools/i586/devkit/SS12u4-Solaris11u1/SS12u4-slim/lib/compilers/amd64/crt1x.o 
>>
>> (symbol has no version assigned)
>>
>> The fix seems to be to add these symbols to the mapfiles.
>
> I'm perplexed - what are these symbols and why are we exporting them 
> ?? I see we already had __environ_lock on x86, but I can't actually 
> find these in our source code (environ_lock, longdouble_used).
>
I don't know. I suspect that these are implicitly created by the 
compiler and in SS12u4, the implicitly linked lib/obj files suddenly 
need access to them. Perhaps we should try to ask the SS compiler team 
for clarification? My googling couldn't find a better answer at least.

/Erik

> David
>
>> I also noted that the format of the make dependency files generated by
>> the compiler is slightly different which required a small adjustment to
>> our rewriting logic for them to remove leading whitespace.
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8077419
>> Webrev: http://cr.openjdk.java.net/~erikj/8077419/webrev.01/
>>
>> /Erik




More information about the build-dev mailing list