下载安装spine过程
[root@centos138 local]# wget https://www.cacti.net/downloads/spine/cacti-spine-1.2.23.tar.gz
[root@centos138 local]# tar -zxvf cacti-spine-1.2.23.tar.gz
[root@centos138 local]# mv cacti-spine-1.2.23 /usr/local/spine
[root@centos138 local]#
[root@centos138 local]# cd /usr/local/spine/
[root@centos138 spine]# ll
total 548
-rwxrwxr-x 1 whitecat whitecat 2678 Jan 2 22:48 bootstrap
-rw-rw-r-- 1 whitecat whitecat 27542 Jan 2 22:48 CHANGELOG
-rw-rw-r-- 1 whitecat whitecat 4833 Jan 2 22:48 common.h
-rw-rw-r-- 1 whitecat whitecat 15539 Jan 2 22:48 configure.ac
-rwxrwxr-x 1 whitecat whitecat 248 Jan 2 22:48 debug
-rw-rw-r-- 1 whitecat whitecat 6103 Jan 2 22:48 error.c
-rw-rw-r-- 1 whitecat whitecat 2471 Jan 2 22:48 error.h
-rw-rw-r-- 1 whitecat whitecat 4679 Jan 2 22:48 INSTALL
-rw-rw-r-- 1 whitecat whitecat 6978 Jan 2 22:48 keywords.c
-rw-rw-r-- 1 whitecat whitecat 2597 Jan 2 22:48 keywords.h
-rw-rw-r-- 1 whitecat whitecat 26440 Jan 2 22:48 LICENSE
-rw-rw-r-- 1 whitecat whitecat 12273 Jan 2 22:48 locks.c
-rw-rw-r-- 1 whitecat whitecat 2576 Jan 2 22:48 locks.h
-rw-rw-r-- 1 whitecat whitecat 462 Jan 2 22:48 Makefile.am
-rw-rw-r-- 1 whitecat whitecat 26851 Jan 2 22:48 Makefile.in
-rw-rw-r-- 1 whitecat whitecat 10759 Jan 2 22:48 nft_popen.c
-rw-rw-r-- 1 whitecat whitecat 2532 Jan 2 22:48 nft_popen.h
-rw-rw-r-- 1 whitecat whitecat 18376 Jan 2 22:48 php.c
-rw-rw-r-- 1 whitecat whitecat 2518 Jan 2 22:48 php.h
-rw-rw-r-- 1 whitecat whitecat 44710 Jan 2 22:48 ping.c
-rw-rw-r-- 1 whitecat whitecat 5386 Jan 2 22:48 ping.h
-rw-rw-r-- 1 whitecat whitecat 94716 Jan 2 22:48 poller.c
-rw-rw-r-- 1 whitecat whitecat 3007 Jan 2 22:48 poller.h
-rw-rw-r-- 1 whitecat whitecat 4063 Jan 2 22:48 README.md
-rw-rw-r-- 1 whitecat whitecat 31532 Jan 2 22:48 snmp.c
-rw-rw-r-- 1 whitecat whitecat 3210 Jan 2 22:48 snmp.h
-rw-rw-r-- 1 whitecat whitecat 35649 Jan 2 22:48 spine.c
-rw-rw-r-- 1 whitecat whitecat 3585 Jan 2 22:48 spine.conf.dist
-rw-rw-r-- 1 whitecat whitecat 18099 Jan 2 22:48 spine.h
-rw-rw-r-- 1 whitecat whitecat 18762 Jan 2 22:48 sql.c
-rw-rw-r-- 1 whitecat whitecat 3169 Jan 2 22:48 sql.h
-rw-rw-r-- 1 whitecat whitecat 56778 Jan 2 22:48 util.c
-rw-rw-r-- 1 whitecat whitecat 4309 Jan 2 22:48 util.h
[root@centos138 spine]#
[root@centos138 spine]# sh bootstrap
。。。
To compile and install Spine using MySQL versions previous to 5.5
please do the following:
./configure --with-reentrant
make
make install
chown root:root /usr/local/spine/bin/spine
chmod +s /usr/local/spine/bin/spine
[root@centos138 spine]# ./configure --with-reentrant
按照此上边的命令configure,到make指令时,报错:
[root@centos138 spine]# make
/bin/sh ./libtool --tag=CC --mode=link gcc -I/usr/include/net-snmp -I/usr/include/net-snmp/.. -I/usr/include/mysql -g -O2 -L/usr/lib64 -L/usr/lib64 -o spine sql.o spine.o util.o snmp.o locks.o poller.o nft_popen.o php.o ping.o keywords.o error.o -lmysqlclient_r -lm -ldl -lcrypto -lz -lpthread -ldl -lm -lpthread -lssl
libtool: link: gcc -I/usr/include/net-snmp -I/usr/include/net-snmp/.. -I/usr/include/mysql -g -O2 -o spine sql.o spine.o util.o snmp.o locks.o poller.o nft_popen.o php.o ping.o keywords.o error.o -L/usr/lib64 -lmysqlclient_r -lcrypto -lz -ldl -lm -lpthread -lssl
/usr/bin/ld: cannot find -lmysqlclient_r
collect2: error: ld returned 1 exit status
make: *** [spine] Error 1
报错找不到libmysqlclient_r.so文件,需要在
[root@centos138 lib]# cd /usr/lib
[root@centos138 lib]# find / -name "libmysqlclient*"
find: ‘/run/user/1000/gvfs’: Permission denied
/usr/lib/libmysqlclient.so.21
/usr/lib/libmysqlclient.so
/usr/lib64/mysql/libmysqlclient.so.18
/usr/lib64/mysql/libmysqlclient.so.18.0.0
/usr/lib64/mysql/libmysqlclient.so
/usr/lib64/mysql/libmysqlclient_r.so 《---------
/usr/lib64/libmysqlclient.so.21
#创建软链接
[root@centos138 lib]# ln -s /usr/lib64/mysql/libmysqlclient_r.so libmysqlclient_r.so
[root@centos138 lib]#
[root@centos138 lib]# ll |grep mysql
lrwxrwxrwx 1 root root 36 Apr 25 11:21 libmysqlclient_r.so -> /usr/lib64/mysql/libmysqlclient_r.so
-rwxr-xr-x 1 root root 10876320 Apr 10 11:22 libmysqlclient.so.21
lrwxrwxrwx 1 root root 10 Apr 24 22:10 mysql -> /opt/mysql
再次make,又出现报错:
[root@centos138 spine]# make
/bin/sh ./libtool --tag=CC --mode=link gcc -I/usr/include/net-snmp -I/usr/include/net-snmp/.. -I/usr/include/mysql -g -O2 -L/usr/lib64 -L/usr/lib64 -o spine sql.o spine.o util.o snmp.o locks.o poller.o nft_popen.o php.o ping.o keywords.o error.o -lmysqlclient_r -lm -ldl -lcrypto -lz -lpthread -ldl -lm -lpthread -lssl
libtool: link: gcc -I/usr/include/net-snmp -I/usr/include/net-snmp/.. -I/usr/include/mysql -g -O2 -o spine sql.o spine.o util.o snmp.o locks.o poller.o nft_popen.o php.o ping.o keywords.o error.o -L/usr/lib64 -lmysqlclient_r -lcrypto -lz -ldl -lm -lpthread -lssl
。。。
snmp.o: In function `snmp_spine_init':
/usr/local/spine/snmp.c:94: undefined reference to `init_snmp'
snmp.o: In function `snmp_spine_close':
/usr/local/spine/snmp.c:105: undefined reference to `snmp_shutdown'
snmp.o: In function `snmp_host_cleanup':
/usr/local/spine/snmp.c:367: undefined reference to `snmp_sess_close'
collect2: error: ld returned 1 exit status
make: *** [spine] Error 1
要确保mysql-devel、net-snmp、net-snmp-devel这些都有安装,然后加上snmp选项重试编译
./configure --with-mysql=/usr/mysql --with-snmp=/usr/include/net-snmp/
然后重试make & make install,没有报错