Dear Arnau, I believe that we fixed this issue in https://github.com/easybuilders/easybuild-easyconfigs/pull/18250
With XZ built with that change I see: $ objdump -tT XZ/5.2.5-GCCcore-10.3.0/lib/liblzma.so.5 | grep lzma_stream_encoder_mt) 000000000000a690 l F .text 000000000000006a lzma_stream_encoder_mt_52 000000000000a690 l F .text 000000000000006a lzma_stream_encoder_mt_522 000000000000a690 l F .text 000000000000006a lzma_stream_encoder_mt_512a 000000000000a700 l F .text 00000000000000f8 lzma_stream_encoder_mt_memusage_52 000000000000a700 l F .text 00000000000000f8 lzma_stream_encoder_mt_memusage_522 000000000000a700 l F .text 00000000000000f8 lzma_stream_encoder_mt_memusage_512a 000000000000a700 g F .text 00000000000000f8 lzma_stream_encoder_mt_memusage 000000000000a690 g F .text 000000000000006a lzma_stream_encoder_mt 000000000000a700 g F .text 00000000000000f8 lzma_stream_encoder_mt_memusage 000000000000a690 g F .text 000000000000006a lzma_stream_encoder_mt 000000000000a690 g F .text 000000000000006a lzma_stream_encoder_mt 000000000000a700 g F .text 00000000000000f8 lzma_stream_encoder_mt_memusage 000000000000a700 g DF .text 00000000000000f8 XZ_5.2 lzma_stream_encoder_mt_memusage 000000000000a700 g DF .text 00000000000000f8 (XZ_5.2.2) lzma_stream_encoder_mt_memusage 000000000000a700 g DF .text 00000000000000f8 (XZ_5.1.2alpha) lzma_stream_encoder_mt_memusage 000000000000a690 g DF .text 000000000000006a XZ_5.2 lzma_stream_encoder_mt 000000000000a690 g DF .text 000000000000006a (XZ_5.2.2) lzma_stream_encoder_mt 000000000000a690 g DF .text 000000000000006a (XZ_5.1.2alpha) lzma_stream_encoder_mt Regards, Simon From: [email protected] <[email protected]> On Behalf Of Arnau Sent: 04 October 2024 11:03 To: [email protected] Subject: [easybuild] XZ-5.2.5 compilation & nonosymbols CAUTION: This email originated from outside the organisation. Do not click links or open attachments unless you recognise the sender and know the content is safe. Dear all, I have a problem with XZ compiled with EB and the one from Rocky 9. When I load my Python/3.11.1-GCCcore-10.3.0-jupyter-4.0 module I get errors from the os: # flatpak flatpak: symbol lookup error: /lib64/librpmio.so.9: undefined symbol: lzma_stream_encoder_mt, version XZ_5.2 # ldd /lib64/librpmio.so.9 [...] liblzma.so.5 => /apps/prod/easybuild/sl7.x86_64.foss-2021a/software/XZ/5.2.5-GCCcore-10.3.0/lib/liblzma.so.5 (0x00007f993163c000) the symbol is there but, as you can see, it's listed twice, first in the static table and then in the dynamic static table: # objdump -tT /apps/prod/easybuild/sl7.x86_64.foss-2021a/software/XZ/5.2.5-GCCcore-10.3.0/lib/liblzma.so.5|grep lzma_stream_encoder_mt 000000000000a020 g F .text 0000000000000100 lzma_stream_encoder_mt_memusage 0000000000009fb0 g F .text 000000000000006a lzma_stream_encoder_mt 000000000000a020 g DF .text 0000000000000100 XZ_5.1.2alpha lzma_stream_encoder_mt_memusage 0000000000009fb0 g DF .text 000000000000006a XZ_5.1.2alpha lzma_stream_encoder_mt the problems seems to be that the version from the static table is missing. if I compare my compilation with the one from Rocky: # objdump -tT /lib64/liblzma.so.5|grep lzma_stream_encoder_mt 00000000000101d0 g DF .text 00000000000000f9 XZ_5.2 lzma_stream_encoder_mt_memusage 0000000000010150 g DF .text 0000000000000072 XZ_5.2 lzma_stream_encoder_mt they have all the symbols in the dyanmic table (no static table at all) and all with vesions. question here, as I'm not an expert on this, what should be the best approach to solve this issue? remove all symbols from static table or add versions to the objects in the static table? I don't really understand the implicatiopns of one or the other option... Thanks, Arnau

