OpenBSD 5.9 не может предварительно загрузить библиотеку ''

POSIXly, siempre puede definir una función como:

prog_f() (
  for i do
    set -- "$@" -f "$i"
    shift
  done
  exec prog "$@"
)
3
06.05.2016, 23:00
1 ответ

openbsd имеет четкую концепцию управления памятью с точки зрения безопасности. Следовательно, статически связанные библиотеки не могут быть предварительно загружены.

Код гласит:

        shlib = _dl_load_shlib(cp, _dl_objects, OBJTYPE_LIB,
        _dl_objects->obj_flags);
        if (shlib == NULL) {
            _dl_printf("%s: can't preload library '%s'\n",
                __progname, cp);
            _dl_exit(4);
        }

Соответственно, значение shlib не должно проверяться как NULL .

Попробуйте вместо этого загрузить динамически подключаемую библиотеку, это должно работать.

3
27.01.2020, 21:22

Теги

Похожие вопросы