Solaris jdk9 build problem

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Tue Jun 2 10:33:21 UTC 2015


On 2015-06-02 12:22, David Holmes wrote:
> On 2/06/2015 8:12 PM, Semyon Sadetsky wrote:
>>
>> On 6/2/2015 1:06 PM, Magnus Ihse Bursie wrote:
>>> On 2015-06-02 11:25, Semyon Sadetsky wrote:
>>>>
>>>> On 6/2/2015 11:47 AM, Magnus Ihse Bursie wrote:
>>>>> On 2015-06-02 08:20, Semyon Sadetsky wrote:
>>>>>> On 6/2/2015 2:35 AM, Magnus Ihse Bursie wrote:
>>>>>>> On 2015-06-01 21:17, Semyon Sadetsky wrote:
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> Could you help me to resolve 9 build problem on Solaris 11.2:
>>>>>>>>
>>>>>>>> /usr/ccs/bin/nm: solaris_x86_64.o: No such file or directory
>>>>>>>> gmake[8]: *** [libjvm.so] Error 1
>>>>>>>> gmake[8]: Leaving directory
>>>>>>>> `/jdk9/client/build/solaris-x86_64-normal-server-fastdebug/hotspot/solaris_amd64_compiler2/fastdebug' 
>>>>>>>>
>>>>>>>>
>>>>>>>> gmake[7]: *** [the_vm] Error 2
>>>>>>>> gmake[7]: Leaving directory
>>>>>>>> `/jdk9/client/build/solaris-x86_64-normal-server-fastdebug/hotspot/solaris_amd64_compiler2/fastdebug' 
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> and earlier in the log:
>>>>>>>>
>>>>>>>> Assembling
>>>>>>>> /jdk9/client/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.s
>>>>>>>> rm -f solaris_x86_64.o
>>>>>>>> xarch=amd64 -o solaris_x86_64.o
>>>>>>>> /jdk9/client/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.s
>>>>>>>> /usr/bin/bash: -o: command not found
>>>>>>>> gmake[8]: [solaris_x86_64.o] Error 127 (ignored)
>>>>>>>> Compiling /jdk9/client/hotspot/src/share/vm/gc/shared/space.cpp
>>>>>>>> rm -f space.o
>>>>>>>> /opt/solarisstudio12.3/bin/CC -DSOLARIS -DSPARC_WORKS -
>>>>>>>> ...
>>>>>>>>
>>>>>>>>
>>>>>>>> I guess there should be cc before xarch, but it's omited.
>>>>>>> I'm guessing that .s is an assembly file, so most likely it is
>>>>>>> $(AS) that resolves to empty. Can you check your spec.gmk for the
>>>>>>> value of AS?
>>>>>>>
>>>>>>> /Magnus
>>>>>>>
>>>>>> Yes, AS was empty.
>>>>>> after I set it to /opt/solarisstudio12.3/bin/cc the first error
>>>>>> message has gone but then I got:
>>>>> You cannot set it manually. If configure has failed to detect it,
>>>>> all bets are off. I'm a bit surprised that configure allowed AS to
>>>>> be empty, it should have aborted.
>>>>>
>>>>> Try running configure with
>>>>> --with-toolchain-path=/opt/solarisstudio12.3/bin. Does that help you
>>>>> get a proper value of AS.
>>>>>
>>>>> /Magnus
>>>>
>>>> AS remains empty:
>>>> ====================================================
>>>> A new configuration has been successfully created in
>>>> /jdk9/client/build/solaris-x86_64-normal-server-fastdebug
>>>> using configure arguments '--enable-debug
>>>> --with-toolchain-path=/opt/solarisstudio12.3/bin'.
>>>>
>>>> Configuration summary:
>>>> * Debug level:    fastdebug
>>>> * HS debug level: fastdebug
>>>> * JDK variant:    normal
>>>> * JVM variants:   server
>>>> * OpenJDK target: OS: solaris, CPU architecture: x86, address 
>>>> length: 64
>>>>
>>>> Tools summary:
>>>> * Boot JDK:       java version "1.8.0_45" Java(TM) SE Runtime
>>>> Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM
>>>> (build 25.45-b02, mixed mode)  (at /usr/jdk/instances/jdk1.8.0_45)
>>>> * Toolchain:      solstudio (Oracle Solaris Studio)
>>>> * C Compiler:     Version 5.12 (at /opt/solarisstudio12.3/bin/cc)
>>>> * C++ Compiler:   Version 5.12 (at /opt/solarisstudio12.3/bin/CC)
>>>>
>>>> Build performance summary:
>>>> * Cores to use:   2
>>>> * Memory limit:   2048 MB
>>>>
>>>> dev at solaris1:/jdk9/client$ grep "AS:"
>>>> /jdk9/client/build/solaris-x86_64-normal-server-fastdebug/spec.gmk
>>>> AS:=
>>>
>>> Do you have an as in your path or in /opt/solarisstudio12.3/bin then?
>>> Have you even built jdk successfully on this machine?
>>>
>>> /Magnus
>>>
>> No it's a new installation. And I'm building jdk on Solaris for the
>> first time.
>> as is absent in  /opt/solarisstudio12.3/bin.
>>
>> dev at solaris1:/jdk9/client$ ls /opt/solstudio12.2/bin
>> CC              cscope          er_bit          f90 rtc_patch_area  
>> sunf90
>> CCadmin         ctc             er_cp           f95 rxm             
>> sunf95
>> amd64           ctcr            er_export       fbe rxs sunstudio
>> analyzer        ctrace          er_generic      fdumpmod smctl tcov
>> bcheck          cxref           er_html         fpp solstudio       tha
>> binopt          dbx             er_kernel       fpr spot            
>> uncover
>> c++filt         dbxtool         er_mpipp        fsplit spot_diff version
>> c89             dem             er_mv           gen_custom
>> ss_attach       whatdir
>> c99             discover        er_otfdump      getmsg sunCC xprof_atob
>> cb              dlight          er_print        indent sunas xprof_btoa
>> cc              dmake           er_rm           lint sunc89
>> cc-5.0          dumpstabs       er_src          lock_lint sunc99
>> cflow           dwarfdump       er_vtunify      ptclean suncc
>> collect         er_archive      f77             ripc sunf77
>>
>> Should it be there?
>
> No it is in a separate package apparently (not installed by default on 
> Solaris 11):
>
> pkg install pkg:/developer/assembler

Thanks for the information David!

I opened https://bugs.openjdk.java.net/browse/JDK-8081676 to track that 
we should verify that AS is properly detected on Solaris, and to print 
the help about pkg install in case as is missing.

/Magnus

>
> David
> -----
>
>>
>>
>>>> dev at solaris1:/jdk9/client$
>>>>
>>>>
>>>>>
>>>>>>
>>>>>> cc: Warning: -xarch=amd64 is deprecated, use -m64 to create 64-bit
>>>>>> programs
>>>>>> ld: fatal: file solaris_x86_64.o: not an ELF object
>>>>>> gmake[8]: *** [solaris_x86_64.o] Error 2
>>>>>> gmake[8]: *** Waiting for unfinished jobs....
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>




More information about the build-dev mailing list