Сборка ndsad во FreeBSD 7.0

Технические вопросы по UTM 5.0
Ответить
horn
Сообщения: 4
Зарегистрирован: Чт дек 14, 2006 18:05

Сборка ndsad во FreeBSD 7.0

Сообщение horn »

Столкнулся с проблемой при сборке ndsad под FreeBSD 7.0. В FreeBSD 6.x все собиралось без проблем.

Код: Выделить всё

# cat preconf
#!/bin/sh
aclocal-1.9
automake-1.9 --add-missing
autoconf-2.61

Код: Выделить всё

# ./configure --with-bsd_div=yes
checking build system type... i386-unknown-freebsd7.0
checking host system type... i386-unknown-freebsd7.0
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking whether ln -s works... yes
checking for pcap_loop in -lpcap... yes
checking for library containing pthread_mutex_init... none required
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... no
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for int64_t... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
После make под конец выплевывает ошибку:

Код: Выделить всё

if g++ -DHAVE_CONFIG_H -I. -I. -I.     -O0 -fno-inline -g -ftemplate-depth-32 -g -MT ndsad-thr.o -MD -MP -MF ".deps/ndsad-thr.Tpo" -c -o ndsad-thr.o `test -f 'thr.cc' || echo './'`thr.cc;  then mv -f ".deps/ndsad-thr.Tpo" ".deps/ndsad-thr.Po"; else rm -f ".deps/ndsad-thr.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I.     -O0 -fno-inline -g -ftemplate-depth-32 -g -MT ndsad-bsd_divert.o -MD -MP -MF ".deps/ndsad-bsd_divert.Tpo" -c -o ndsad-bsd_divert.o `test -f 'bsd_divert.cc' || echo './'`bsd_divert.cc;  then mv -f ".deps/ndsad-bsd_divert.Tpo" ".deps/ndsad-bsd_divert.Po"; else rm -f ".deps/ndsad-bsd_divert.Tpo"; exit 1; fi
bsd_divert.cc: In function 'void* bsd_divert_process(void*)':
bsd_divert.cc:49: warning: deprecated conversion from string constant to 'char*'
g++  -g  -L/usr/local/lib/ -L/usr/local/pgsql/lib/ -L/usr/lib/mysql/ -L/usr/local/lib/mysql/ -L/usr/local/lib/  -o ndsad  ndsad-linux_ulog.o ndsad-config.o  ndsad-debug.o ndsad-eth-hndl.o  ndsad-handlers.o ndsad-iflist.o  ndsad-iptonf.o ndsad-logger.o  ndsad-mempool.o ndsad-ndsad.o  ndsad-nf.o ndsad-nfc.o  ndsad-ppp-hndl.o ndsad-thr.o  ndsad-bsd_divert.o  -lc_r  -lpcap
/usr/bin/ld: cannot find -lc_r
*** Error code 1

Stop in /root/ndsad.
*** Error code 1

Stop in /root/ndsad.

Код: Выделить всё

# uname -srm
FreeBSD 7.0-STABLE i386
Гугл не помог :( Не подскажите в чем дело?

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

в том, что надо использовать ng_netflow. Ну IPCAD. Но не это поделие, которое уже давно не обновляется, имеет ряд багофич.

horn
Сообщения: 4
Зарегистрирован: Чт дек 14, 2006 18:05

Сообщение horn »

Решил проблему заменой в Makefile: -lc_r на -lpthread.

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

Советую вам вытолкать ndsad вон с ваших серверов, а тем более работающих под FreeBSD. Сам я давно настроил связку ng_ipfw+ng_netflow, и забыл про то. Работает как часы. И кроме того еще позволяет самому определять, что считать, а что пропускать мимо ушей так сказать.

nurmaga
Сообщения: 81
Зарегистрирован: Вс дек 12, 2010 17:08

Сообщение nurmaga »

horn писал(а):Решил проблему заменой в Makefile: -lc_r на -lpthread.
Объясните пожалуйста подробнее? Такая проблема появилась...

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

Тоже собираете ndsad? Не стоит тратить время.

nurmaga
Сообщения: 81
Зарегистрирован: Вс дек 12, 2010 17:08

Сообщение nurmaga »

JAO писал(а):Тоже собираете ndsad? Не стоит тратить время.
А что Вы предлагаете?

gtk
Сообщения: 232
Зарегистрирован: Пт янв 21, 2005 18:33

Сообщение gtk »

nurmaga писал(а):
horn писал(а):Решил проблему заменой в Makefile: -lc_r на -lpthread.
Объясните пожалуйста подробнее? Такая проблема появилась...

можно сделать проще, копируть бинарники с рабочей системы )

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

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

nurmaga
Сообщения: 81
Зарегистрирован: Вс дек 12, 2010 17:08

Сообщение nurmaga »

JAO писал(а):Я предлагаю ng_netflow. Потому как пользуюсь им уже четвертый год, и никаких проблем.
Можно документацию?

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

Можно. man ng_netflow. Но вам это ничего не даст. Это как кубик Рубика - пока не покажут как, не соберешь. Могу выслать готовый скрипт и научить с ним обращаться.

nurmaga
Сообщения: 81
Зарегистрирован: Вс дек 12, 2010 17:08

Сообщение nurmaga »

JAO писал(а):Можно. man ng_netflow. Но вам это ничего не даст. Это как кубик Рубика - пока не покажут как, не соберешь. Могу выслать готовый скрипт и научить с ним обращаться.
Очень бы был рад. web--master@bk.ru
Пришлите пожалуйста

nurmaga
Сообщения: 81
Зарегистрирован: Вс дек 12, 2010 17:08

Сообщение nurmaga »

Скрипт не запускается.

Код: Выделить всё

local# /usr/local/etc/rc.d/netflow start
Starting netflow generatorngctl: send msg: File exists
ngctl: send msg: Address already in use
ngctl: send msg: File exists
ngctl: send msg: File exists
ngctl: send msg: Address already in use
.
local#

Код: Выделить всё

local# cat /sys/i386/conf/NAT | grep NETGRAPH
options         NETGRAPH
options         NETGRAPH_NETFLOW
options         NETGRAPH_KSOCKET
options         NETGRAPH_IPFW
local#
Скажите пожалуйста, в чем может быть причина?

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

В том, что он уже один раз запустился.

Ответить