FreeBSD 6.0
Пытаясь добавить библиотеку libnsl запустил следующее:
ldconfig -m /usr/compat/linux/lib/
Всё! теперь на любой ввод машина выдаёт:
/libexec/ld-elf.so.1: Undefined symbol "__stdinp" referenced from COPY relocation in <то что запускаю>
Просьба не глумиться, а подсказать чего делать или отослать к соответствующей статье.
>FreeBSD 6.0
>Пытаясь добавить библиотеку libnsl запустил следующее:
>ldconfig -m /usr/compat/linux/lib/
>Всё! теперь на любой ввод машина выдаёт:
>/libexec/ld-elf.so.1: Undefined symbol "__stdinp" referenced from COPY relocation in <то что запускаю>
>
>
>Просьба не глумиться, а подсказать чего делать или отослать к соответствующей статье.
>Кхм. Успокоился и всё починил.
Тем, кому придётся:
1. грузимся в однопользовательский режим
2. монтируем Var #>mount -rw /var
3. правим хинты #>ldconfig /lib
4. монтируем Usr #>mount -rw /usr
5. добавляем для начального комплекта #>ldconfig -m /usr/lib и дальше по списку
/var/run/ld-elf.so.hints:
search directories: /lib:/usr/lib:/usr/lib/compat:/usr/X11R6/lib:/usr/local/lib:/usr/local/lib/compat:/usr/local/lib/comp
at/pkg:/usr/local/lib/mysql:/usr/local/lib/apache2
6. перегружаемся
Коротко и ясно. Спасибо!
Думаю еще многим пригодится, напишите модератору что-бы добавил в фак
P.S.
# Установите в YES для отключения проверок безопасности ldconfig.
#ldconfig_insecure="NO"
# Пути, по которым ищутся разделяемые библиотеки
ldconfig_paths="/usr/lib/compat /usr/X11R6/lib /usr/local/lib \
/usr/local/lib/compat/pkg /usr/compat/linux/lib"
# Пути, по которым ищутся разделяемые библиотеки a.out
#ldconfig_paths_aout="/usr/lib/compat/aout /usr/X11R6/lib/aout \
#/usr/local/lib/aout"
>FreeBSD 6.0
>Пытаясь добавить библиотеку libnsl запустил следующее:Зачем вам всем понадобилась вдруг libnsl?
>>FreeBSD 6.0
>>Пытаясь добавить библиотеку libnsl запустил следующее:
>
>Зачем вам всем понадобилась вдруг libnsl?
>
>http://www.opennet.me/openforum/vsluhforumID9/6929.htmlОтвечаю. Для учёта трафика по netflow.
Для сборки Cflow c поддержкой flow-tools в Makefile.PL есть опция линкера -lnsl
И соответственно она там не нужна (для BSD уж точно).
Хотя проблемы с установкой возникают.
Просто в этом сабе:
sub find_flow_tools {
my($ver, $dir);
my($libdir, $incdir);
if (-f '../../lib/libft.a') {
$dir = '../../lib';
$incdir = "-I$dir -I$dir/..";
$libdir = "-L$dir";
}
if ("$libdir") {
print "Found flow-tools... using \"-DOSU $incdir $libdir -lft -lz\".\n";
return { CCFLAGS => '-DOSU',
INC => join(' ', $incdir),
LIBS => [ join(' ', $libdir, '-lnsl -lft -lz') ] }
}
return undef
}
подразумевается, что #>perl Makefile.PL запускается из каталога:
/usr/ports/net-mgmt/flow-tools/work/flow-tools-0.68/contrib/Cflow-1.051
Если же нет, то строки
if (-f '../../lib/libft.a') {
$dir = '../../lib';
нужно исправить с учётом реального положения libft.a