Добрый день,
У меня проблемы с libxml2.
Я попытался создать модуль Perl XML-LibXML, который является частью нашей стандартной среды выполнения. Однако на этот раз установка на блок RHEL5 завершилась неудачно, поскольку процесс сборки пожаловался на отсутствие libxml2:
$> perl Makefile.PL LIB=/foo/lib/perl PREFIX=/foo INSTALLDIRS=site
enable native perl UTF8
running xml2-config...ok (2.7.6)
looking for -lxml2... no
looking for -llibxml2... no
libxml2 not found
Однако файл был доступен. Начиная сборку с
perl Makefile.PL LIB=/usr/inform/target/lib/perl PREFIX=/usr/inform/target INSTALLDIRS=site
привело к большему количеству доказательств реальной проблемы:
[...]
Can't load 'blib/arch/auto/Conftest/Conftest.so' for module Conftest: /usr/inform/target/lib/libxml2.so.2: cannot restore segment prot after reloc: Permission denied at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 230.
at test.pl line 2
[...]
После некоторых исследований я обнаружил, что проблема в том, что libxml2.so
создается с перемещением текста:
[tess91@INF-AW] lib$ eu-findtextrel libxml2.so.2.7.6
the file containing the function 'get_crc_table' is not compiled with -fpic/-fPIC
the file containing the function 'crc32' is not compiled with -fpic/-fPIC
the file containing the function 'gzerror' is not compiled with -fpic/-fPIC
[...]
Ответ, поскольку у нас на целевом компьютере активен SElinux, соединение с libxml.2 не удалось!
Есть ли возможность правильно создать libxml2
, или мне нужно попросить администратора повернуть SElinux, чтобы разрешить перемещение?
Я действительно не могу поверить, что я единственная, у кого есть эта проблема в Linux с активным SElinux. Чего мне не хватает?
Любая помощь приветствуется!
С уважением,
Stefan