new build uses wrong libfreetype.so

Jim Holmlund james.holmlund at oracle.com
Thu Sep 27 13:12:14 PDT 2012



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