-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Dear all,
We would like to evaluate phobos to run in our heterogeneous infrastructure.
I search to compile and run phobos 3.2.0 on Red Hat Enterprise Linux like and Ubuntu.
Compiling and running phobos 3.2.0 on Rocky Linux 8.10 is OK. In Ubuntu 22.04 it compiles fine but I have "undefined symbol" error in runtime, something was wrong in link time:
phobos-master$ source tests/test_env.sh
phobos-master$ ./scripts/phobos_db setup_db -s -d phobos_test -p phobos
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 187, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "/usr/lib/python3.10/runpy.py", line 110, in _get_module_details
import(pkg_name)
File "/home/user/phobos-master/src/cli/build/lib.linux-x86_64-3.10/phobos/init.py", line 33, in
from phobos.cli.common import PhobosActionContext
File "/home/user/phobos-master/src/cli/build/lib.linux-x86_64-3.10/phobos/cli/common/init.py", line 40, in
from phobos.core import cfg
File "/home/user/phobos-master/src/cli/build/lib.linux-x86_64-3.10/phobos/core/cfg.py", line 30, in
from phobos.core.ffi import (LIBPHOBOS, ResourceFamily)
File "/home/user/phobos-master/src/cli/build/lib.linux-x86_64-3.10/phobos/core/ffi.py", line 52, in
LIBPHOBOS_ADMIN = CDLL(LIBPHOBOS_ADMIN_NAME)
File "/usr/lib/python3.10/ctypes/init.py", line 374, in init
self._handle = _dlopen(self._name, mode)
OSError: /home/user/phobos-master/src/admin/.libs/libphobos_admin.so: undefined symbol: layout_reconstruct
The "layout_reconstruct" is referenced on libphobos_store.so and libphobos_admin.so:
phobos-master$ nm src/admin/.libs/libphobos_admin.so | grep layout_reconstruct
U layout_reconstruct
phobos-master$ nm src/store/.libs/libphobos_store.so | grep layout_reconstruct
000000000000c560 T layout_reconstruct
Both libraries are loaded by ffi.py libphobos_store.so before that libphobos_admin.so:
phobos-master$ cat -n src/cli/build/lib.linux-x86_64-3.10/phobos/core/ffi.py
44 LIBPHOBOS_NAME = "libphobos_store.so" 45 LIBPHOBOS = CDLL(LIBPHOBOS_NAME) 46 # FIXME we should call phobos_fini(). But this can only be done once we don't 47 # need phobos anymore. Since phobos_fini() only frees memory currently, this is 48 # not an issue. 49 LIBPHOBOS.phobos_init() 50 51 LIBPHOBOS_ADMIN_NAME = "libphobos_admin.so" 52 LIBPHOBOS_ADMIN = CDLL(LIBPHOBOS_ADMIN_NAME) 53
The system uses:
libglib2.0-0 and libglib2.0-dev version 2.72 for GLib library of C routines
python3.10 and libpython3.10
Any ideas?