cmspack.c:(.text+0x276b): undefined reference to `_cmsHalf2Float' error in build-infra build ('old' build works OK)
Kelly O'Hair
kelly.ohair at oracle.com
Thu Nov 15 10:36:30 PST 2012
Thanks Erik.
This is a good point to make.
Our intent with the new makefiles is that adding sources, java or native, should not require a developer
to change any build logic. But that means that the sources need to be organized in a way that makes it
easy for us to just compile all the sources in a directory.
Anyone that creates testcases in the source area or leaves random sources around may find this disturbing.
-kto
On Nov 15, 2012, at 3:41 AM, Erik Joelsson wrote:
> Actually, we are needlessly listing source files explicitly for a number of libraries, including liblcms.so, in CompileNativeLibraries.gmk. I'm looking through them now and removing the obvious ones.
>
> /Erik
>
> On 2012-11-15 11:15, Fredrik Öhrström wrote:
>> Den onsdagen den 14:e november 2012 skrev Phil Race:
>>> So in the new build system is *everything* centralised like this?
>>> Monolithic files rather than including area specific ones ?
>>> I'm not sure what the supposed advantage might be?
>>>
>>> Normally in the new build system, adding new source files do not require
>> changing
>> the makefile. This particular library has its sources mixed up with
>> something else
>> in the same source directory, thus the need to list source files explicitly.
>>
>> perha
>> It should be easy to fix I suppose..... and generally a goodthing. :-)
>>
>> //Fredrik
>>
>> -phil.
>>> On 11/11/12 3:02 PM, David Holmes wrote:
>>>
>>>> Hi Martijn,
>>>>
>>>> Known issue fixed a couple of days ago:
>>>>
>>>> http://hg.openjdk.java.net/**build-infra/jdk8/jdk/rev/**1e79fec4a01f<http://hg.openjdk.java.net/build-infra/jdk8/jdk/rev/1e79fec4a01f>
>>>>
>>>> David
>>>>
>>>> On 12/11/2012 8:45 AM, Martijn Verburg wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>> Building jdk8_tl on Ubuntu 12.04 with OpenJDK Runtime Environment
>>>>> (IcedTea7
>>>>> 2.3.3) (7u9-2.3.3-0ubuntu1~12.04.1)
>>>>> OpenJDK 64-Bit Server VM (build 23.2-b09, mixed mode). I get the
>>>>> following
>>>>> compilation error using build-infra (but not the 'old' build).
>>>>>
>>>>> /home/openjdk/sources/jdk8_tl/**build/linux-x86_64-normal-**
>>>>> server-release/jdk/objs/**liblcms/cmspack.o:
>>>>> In function `UnrollHalfToFloat':
>>>>> cmspack.c:(.text+0x276b): undefined reference to `_cmsHalf2Float'
>>>>> cmspack.c:(.text+0x27c6): undefined reference to `_cmsHalf2Float'
>>>>> /home/openjdk/sources/jdk8_tl/**build/linux-x86_64-normal-**
>>>>> server-release/jdk/objs/**liblcms/cmspack.o:
>>>>> In function `UnrollHalfTo16':
>>>>> cmspack.c:(.text+0x2953): undefined reference to `_cmsHalf2Float'
>>>>> cmspack.c:(.text+0x29fa): undefined reference to `_cmsHalf2Float'
>>>>> /home/openjdk/sources/jdk8_tl/**build/linux-x86_64-normal-**
>>>>> server-release/jdk/objs/**liblcms/cmspack.o:
>>>>> In function `PackHalfFromFloat':
>>>>> cmspack.c:(.text+0x2baf): undefined reference to `_cmsFloat2Half'
>>>>> cmspack.c:(.text+0x2c10): undefined reference to `_cmsFloat2Half'
>>>>> cmspack.c:(.text+0x2ccb): undefined reference to `_cmsFloat2Half'
>>>>> /home/openjdk/sources/jdk8_tl/**build/linux-x86_64-normal-**
>>>>> server-release/jdk/objs/**liblcms/cmspack.o:
>>>>> In function `PackHalfFrom16':
>>>>> cmspack.c:(.text+0x2de7): undefined reference to `_cmsFloat2Half'
>>>>> cmspack.c:(.text+0x2e4d): undefined reference to `_cmsFloat2Half'
>>>>> /home/openjdk/sources/jdk8_tl/**build/linux-x86_64-normal-**
>>>>> server-release/jdk/objs/**liblcms/cmspack.o:cmspack.c:(.**text+0x2f01):
>>>>> more undefined references to `_cmsFloat2Half' follow
>>>>> collect2: ld returned 1 exit status
>>>>> make[2]: ***
>>>>> [/home/openjdk/sources/jdk8_**tl/build/linux-x86_64-normal-**
>>>>> server-release/jdk/lib/amd64/**liblcms.so]
>>>>> Error 1
>>>>> make[1]: *** [libs-only] Error 2
>>>>> make: *** [jdk-only] Error 2
>>>>>
>>>>> Haven't tracked it down any further than this yet, but thought I should
>>>>> report it in :-).
>>>>>
>>>>> Cheers,
>>>>> Martijn
>>>>>
More information about the build-infra-dev
mailing list