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