Re: Symbols from new jemalloc not found

Ryo ONODERA <[email protected]>
Newsgroups gmane.os.netbsd.devel.userlevel
Message-ID <[email protected]>
Hi,

Rin Okuyama <[email protected]> writes:

> Hi,
>
> It seems due to our local change:
>
> https://mail-index.netbsd.org/source-changes/2019/03/12/msg104255.html
>
> http://cvsweb.netbsd.org/bsdweb.cgi/src/external/bsd/jemalloc/include/jemalloc/jemalloc.h.diff?r1=1.5&r2=1.6&f=h
>
> lost during merge for 5.3.

I have added some #defines to jemalloc.h and I have no good effect.


I have built jemalloc and jemalloc.old and __je_* are not identified as FUNC.
They are NOTYPE.

This may be problem.

$ readelf -Wa lib/jemalloc_stub.o | grep dallocx
0000000000000015  0000000c00000004 R_X86_64_PLT32         0000000000000000 __je_dallocx - 4
000000000000001a  0000000e00000004 R_X86_64_PLT32         0000000000000000 __je_sdallocx - 4
    11: 0000000000000014     5 FUNC    GLOBAL DEFAULT    1 dallocx
    12: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND __je_dallocx
    13: 0000000000000019     5 FUNC    GLOBAL DEFAULT    1 sdallocx
    14: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND __je_sdallocx

> Thanks,
> rin
>
> P.S.
> Good news is that fallout for ATF from 5.3 has been
> fixed by the latest commit by christos@:
>
> https://releng.netbsd.org/b5reports/i386/
>
> Thanks!!
>
> On 2024/09/26 12:48, Ryo ONODERA wrote:
>> Hi,
>> 
>> On NetBSD/amd64-current of today with new jemalloc,
>> linking to jemalloc always returns undefined references.
>> This problem causes build failures of pkgsrc/www/firefox
>> and misc/libreoffice at least.
>> 
>> Could anyone take a look at this problem?
>> 
>> The following is my simple test case.
>> 
>> $ cat test.c
>> int
>> main(void)
>> {
>>          return 0;
>> }
>> 
>> $ gcc test.c -ljemalloc
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_sdallocx'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_mallctl'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_rallocx'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_malloc_stats_print'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_mallctlnametomib'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_malloc_message_set'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_sallocx'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_xallocx'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_mallctlbymib'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_dallocx'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_malloc_message_get'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_malloc_conf_get'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_nallocx'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_mallocx'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_malloc_usable_size'
>> ld: /usr/lib/libjemalloc.so: undefined reference to `__je_malloc_conf_set'
>> 
>> 
>> Thank you.
>> 
>

-- 
Ryo ONODERA // [email protected]
PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB  FD1B F404 27FA C7D1 15F3
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.