Package: libpmix2 Version: 3.1.4~rc2-1 Severity: minor File: /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 User: debian...@lists.debian.org Usertags: undefined-symbol adequate
libmca_common_dstore.so needs to link with -lpmix, see the output of adequate, symtree and objdump below. I detected this on amd64 but I assume it also affects other architectures. I filed this bug at severity minor since I'm not sure if there are any programs using the mca_common_dstore lib and if they already use the libpmix symbols and link with the -lpmix flag or not. This bug report brought to you by adequate: https://bonedaddy.net/pabs3/log/2013/02/23/inadequate-software/ $ lib=/usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 $ link=/usr/lib/x86_64-linux-gnu/libpmix.so.2.2.23 $ pkg="$(dpkg-query --search "$lib" | sed s/:.*//)" $ adequate "$pkg" libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_cb_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_bfrops_base_output libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_gds_base_output libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_server_globals libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_buffer_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_peer_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_pshmem libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_kval_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_class_init_epoch libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_namespace_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_globals libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_pshmem_base_framework libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_value_array_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_value_array_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_gds_base_framework libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_output_check_verbosity libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_class_initialize libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_output libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_gds_base_store_modex libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_setenv libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => PMIx_Error_string libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_pshmem_base_select libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_mca_base_framework_open libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_value_array_set_size libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_value_xfer libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1 => pmix_mca_base_framework_close libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_cb_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_bfrops_base_output libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_gds_base_output libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_server_globals libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_buffer_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_peer_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_pshmem libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_kval_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_class_init_epoch libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_namespace_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_globals libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_pshmem_base_framework libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_value_array_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_value_array_t_class libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_gds_base_framework libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_output_check_verbosity libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_class_initialize libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_output libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_gds_base_store_modex libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_setenv libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => PMIx_Error_string libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_pshmem_base_select libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_mca_base_framework_open libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_value_array_set_size libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_value_xfer libpmix2:amd64: undefined-symbol /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 => pmix_mca_base_framework_close $ man adequate | grep -A4 undefined-symbol undefined-symbol The symbol has not been found in the libraries linked with the binary. Either the binary either needs to be linked with an additional shared library, or the dependency on the shared library package that provides this symbol is too weak. References: Debian Policy §3.5, §8.6, §10.2. $ lddtree "$lib" libmca_common_dstore.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libmca_common_dstore.so.1.0.0 (interpreter => none) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 ld-linux-x86-64.so.2 => /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 libevent-2.1.so.6 => /usr/lib/x86_64-linux-gnu/libevent-2.1.so.6 libevent_pthreads-2.1.so.6 => /usr/lib/x86_64-linux-gnu/libevent_pthreads-2.1.so.6 libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 $ symtree "$lib" /usr/lib/x86_64-linux-gnu/pmix/lib/libmca_common_dstore.so.1.0.0 libm.so.6 => !?! useless link !?! libutil.so.1 => !?! useless link !?! libevent-2.1.so.6 => !?! useless link !?! libevent_pthreads-2.1.so.6 => !?! useless link !?! libz.so.1 => !?! useless link !?! libdl.so.2 => !?! useless link !?! libpthread.so.0 => pthread_mutex_lock,pthread_mutex_unlock,pthread_mutex_init,__errno_location libc.so.6 => readdir,strncmp,closedir,__stack_chk_fail,__lxstat,unlink,pthread_mutex_lock,mkdir,realloc,getpid,strdup,chmod,calloc,strlen,memset,rmdir,__errno_location,pthread_mutex_unlock,memcpy,memcpy,strtoul,malloc,opendir,getenv,sscanf,__snprintf_chk,getuid,getauxval,pthread_mutex_init,chown,__cxa_finalize,memmove,strcmp,strerror,__asprintf_chk,sysconf,free WEAK => _ITM_deregisterTMCloneTable,__gmon_start__,_ITM_registerTMCloneTable UNRESOLVED => pmix_output_check_verbosity,pmix_class_initialize,pmix_cb_t_class,pmix_bfrops_base_output,pmix_gds_base_output,pmix_server_globals,pmix_buffer_t_class,pmix_peer_t_class,pmix_pshmem,pmix_output,pmix_kval_t_class,pmix_class_init_epoch,pmix_namespace_t_class,pmix_gds_base_store_modex,pmix_setenv,PMIx_Error_string,pmix_pshmem_base_select,pmix_mca_base_framework_open,pmix_globals,pmix_value_array_set_size,pmix_pshmem_base_framework,pmix_value_array_t_class,pmix_gds_base_framework,pmix_value_xfer,pmix_mca_base_framework_close $ objdump -T "$link" | grep -E "($(symtree "$lib" | sed -n 's/ UNRESOLVED => //p' | tr , '|'))$" 0000000000110080 g DO .data 0000000000000040 Base pmix_value_array_t_class 00000000001127c0 g DO .data 00000000000000d0 Base pmix_pshmem_base_framework 0000000000038a60 g DF .text 00000000000000bd Base pmix_output 0000000000015350 g DF .text 0000000000000052 Base pmix_value_array_set_size 0000000000111640 g DO .data 00000000000000d0 Base pmix_gds_base_framework 0000000000013620 g DF .text 000000000000020d Base pmix_class_initialize 000000000010fea0 g DO .data 0000000000000004 Base pmix_class_init_epoch 00000000000df160 g DF .text 000000000000021c Base pmix_pshmem_base_select 00000000000c5fc0 g DF .text 00000000000000e1 Base pmix_mca_base_framework_open 00000000001115f0 g DO .data 0000000000000004 Base pmix_gds_base_output 0000000000110ac0 g DO .data 0000000000000370 Base pmix_globals 0000000000038f00 g DF .text 0000000000000302 Base pmix_setenv 0000000000115a20 g DO .bss 0000000000000038 Base pmix_pshmem 0000000000038b20 g DF .text 000000000000001d Base pmix_output_check_verbosity 0000000000111420 g DO .data 0000000000000040 Base pmix_kval_t_class 00000000000ca670 g DF .text 0000000000000005 Base pmix_value_xfer 0000000000114ac0 g DO .bss 0000000000000258 Base pmix_server_globals 00000000001114a0 g DO .data 0000000000000040 Base pmix_buffer_t_class 0000000000110400 g DO .data 0000000000000040 Base pmix_namespace_t_class 0000000000110280 g DO .data 0000000000000040 Base pmix_cb_t_class 00000000000c60b0 g DF .text 0000000000000237 Base pmix_mca_base_framework_close 0000000000115480 g DO .bss 0000000000000004 Base pmix_bfrops_base_output 0000000000110340 g DO .data 0000000000000040 Base pmix_peer_t_class 00000000000d6e60 g DF .text 00000000000006cb Base pmix_gds_base_store_modex 0000000000036980 g DF .text 00000000000008c8 Base PMIx_Error_string -- System Information: Debian Release: bullseye/sid APT prefers testing-debug APT policy: (900, 'testing-debug'), (900, 'testing'), (800, 'unstable-debug'), (800, 'unstable'), (790, 'buildd-unstable'), (700, 'experimental-debug'), (700, 'experimental'), (690, 'buildd-experimental') Architecture: amd64 (x86_64) Kernel: Linux 4.19.0-5-amd64 (SMP w/4 CPU cores) Kernel taint flags: TAINT_FIRMWARE_WORKAROUND, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8), LANGUAGE=en_AU.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages libpmix2:amd64 depends on: ii libc6 2.28-10 ii libevent-2.1-6 2.1.8-stable-4 ii libevent-pthreads-2.1-6 2.1.8-stable-4 ii libhwloc-plugins 1.11.13-1 ii zlib1g 1:1.2.11.dfsg-1+b1 libpmix2:amd64 recommends no packages. libpmix2:amd64 suggests no packages. -- no debconf information -- bye, pabs https://wiki.debian.org/PaulWise
signature.asc
Description: This is a digitally signed message part