new build uses wrong libfreetype.so

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Thu Sep 27 14:21:05 PDT 2012


The /java path is not default in the new builds since it is Oracle-internal. That said, we're looking for a way to smooth the transition for those who have a Oracle-style Java path in their environment. Expect a --with-java-path option (or similar) to appear soon. 

The new build will default to 64-bit builds on all 64-bit platforms. This includes sparcv9. This is a conscious decision. If you want 32-bit builds on a 64-bit platform, you have to be explicit about it. 

/Magnus

27 sep 2012 kl. 22:12 skrev Jim Holmlund <james.holmlund at oracle.com>:

> 
> 
> On 9/27/2012 8:46 AM, Jim Holmlund wrote:
>> 
>> Old make on solaris does this
>> /usr/bin/cp /java/devtools/sparc/freetype-sparc/lib/libfreetype.so /net/mmm/export/home/jjh/ws/jdk8master/build/solaris-sparc/lib/sparc/libfreetype.so.6
>> 
>> New make on solaris does this:
>> 
>> ld: fatal: file /usr/sfw/lib/libfreetype.so: wrong ELF class: ELFCLASS32
>> ld: fatal: File processing errors. No output written to /net/mmm/export/home/jjh/ws/jdk8master/build/solaris-sparcv9-normal-server-release/jdk/lib/sparcv9/libfontmanager.so
>> make381[2]: *** [/net/mmm/export/home/jjh/ws/jdk8master/build/solaris-sparcv9-normal-server-release/jdk/lib/sparcv9/libfontmanager.so] Error 1
>> make381[2]: Leaving directory `/net/mmm/export/home/jjh/ws/jdk8master/jdk/makefiles'
>> make381[1]: *** [libs-only] Error 2
>> make381[1]: Leaving directory `/net/mmm/export/home/jjh/ws/jdk8master/jdk/makefiles'
>> make381: *** [jdk-only] Error
>> 
>> 
>> What is the fix?
>> - jjh
>> 
> 
> PS.   I reran config with
>       --with-freetype=/java/devtools/sparc/freetype-sparc
> 
> and the build still fails with the same error on that libfreetype.so:
>> cd /net/mmm/export/home/jjh/ws/jdk8master/build/solaris-sparcv9-normal-server-release/jdk/objs/libmanagement && /usr/bin/zip -q /net/mmm/export/home/jjh/ws/jdk8master/build/solaris-sparcv9-normal-server-release/jdk/objs/libmanagement/libmanagement.diz libmanagement.debuginfo
>> ld: fatal: file /java/devtools/sparc/freetype-sparc/lib/libfreetype.so: wrong ELF class: ELFCLASS32
>> ld: fatal: File processing errors. No output written to /net/mmm/export/home/jjh/ws/jdk8master/build/solaris-sparcv9-normal-server-release/jdk/lib/sparcv9/libfontmanager.so
>> make381[2]: *** [/net/mmm/export/home/jjh/ws/jdk8master/build/solaris-sparcv9-normal-server-release/jdk/lib/sparcv9/libfontmanager.so] Error 1
>> make381[2]: *** Waiting for unfinished jobs....
>> make381[2]: Leaving directory `/net/mmm/export/home/jjh/ws/jdk8master/jdk/makefiles'
>> make381[1]: *** [libs-only] Error 2
>> make381[1]: Leaving directory `/net/mmm/export/home/jjh/ws/jdk8master/jdk/makefiles'
>> make381: *** [jdk-only] Error 2
> 
> Then I noticed that 'ELFCLASS32' and wondered if I was building the 64 bit version.  So I reran configure with
>    --with-tools-dir=/java/devtools/sparc/SUNWspro/SS12u1/bin \
>    --with-freetype=/java/devtools/sparc/freetype-sparc \
>    --with-target-bits=32 \
> 
> and this time the build worked.
> 
> Now, if I am not mistaken each of those are the default in the old build system.  Why aren't they the default in the new?
> 
> - jjh
> 
> 



More information about the build-infra-dev mailing list