以下是zabbix安装时的步骤:
然后当我执行时:make install
然后我看到以下异常。请帮我弄清问题。感谢。
../../../include/zbxdb.h:67:20: error: mysql.h: No such file or directory
../../../include/zbxdb.h:68:21: error: errmsg.h: No such file or directory
../../../include/zbxdb.h:69:27: error: mysqld_error.h: No such file or directory
In file included from ../../../include/db.h:25,
from db.c:22:
../../../include/zbxdb.h:71: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
../../../include/zbxdb.h:174: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
../../../include/zbxdb.h:175: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
../../../include/zbxdb.h:177: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'zbx_db_fetch'
In file included from db.c:22:
../../../include/db.h:546: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
../../../include/db.h:548: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
../../../include/db.h:549: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DBfetch'
../../../include/db.h:586: error: expected declaration specifiers or '...' before 'MYSQL_ROW'
db.c:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
db.c: In function 'zbx_db_connect':
db.c:119: error: 'conn' undeclared (first use in this function)
db.c:119: error: (Each undeclared identifier is reported only once
db.c:119: error: for each function it appears in.)
db.c:121: error: 'CLIENT_MULTI_STATEMENTS' undeclared (first use in this function)
db.c:145: error: 'CR_CONN_HOST_ERROR' undeclared (first use in this function)
db.c:146: error: 'CR_SERVER_GONE_ERROR' undeclared (first use in this function)
db.c:147: error: 'CR_CONNECTION_ERROR' undeclared (first use in this function)
db.c:148: error: 'CR_SERVER_LOST' undeclared (first use in this function)
db.c:149: error: 'ER_SERVER_SHUTDOWN' undeclared (first use in this function)
db.c:150: error: 'ER_ACCESS_DENIED_ERROR' undeclared (first use in this function)
db.c:151: error: 'ER_ILLEGAL_GRANT_FOR_TABLE' undeclared (first use in this function)
db.c:152: error: 'ER_TABLEACCESS_DENIED_ERROR' undeclared (first use in this function)
db.c:153: error: 'ER_UNKNOWN_ERROR' undeclared (first use in this function)
db.c: In function 'zbx_db_close':
db.c:350: error: 'conn' undeclared (first use in this function)
db.c: At top level:
db.c:409: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
db.c: In function 'zbx_db_vexecute':
db.c:656: error: 'conn' undeclared (first use in this function)
db.c:668: error: 'CR_CONN_HOST_ERROR' undeclared (first use in this function)
db.c:669: error: 'CR_SERVER_GONE_ERROR' undeclared (first use in this function)
db.c:670: error: 'CR_CONNECTION_ERROR' undeclared (first use in this function)
db.c:671: error: 'CR_SERVER_LOST' undeclared (first use in this function)
db.c:672: error: 'ER_SERVER_SHUTDOWN' undeclared (first use in this function)
db.c:673: error: 'ER_ACCESS_DENIED_ERROR' undeclared (first use in this function)
db.c:674: error: 'ER_ILLEGAL_GRANT_FOR_TABLE' undeclared (first use in this function)
db.c:675: error: 'ER_TABLEACCESS_DENIED_ERROR' undeclared (first use in this function)
db.c:676: error: 'ER_UNKNOWN_ERROR' undeclared (first use in this function)
db.c: At top level:
db.c:825: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
db.c:1124: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
db.c:1139: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'zbx_db_fetch'
make[3]: *** [db.o] Error 1
make[3]: Leaving directory `/root/xyy/zabbix-1.8.4/src/libs/zbxdb'
make[2]: *** [install-recursive] Error 1
make[2]: Leaving directory `/root/xyz/zabbix-1.8.4/src/libs'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/root/xyz/zabbix-1.8.4/src'
make: *** [install-recursive] Error 1
编辑详情:
根据一条评论,我尝试安装mysql-devel,即yum install mysql-devel
,但我得到以下错误:
Error: Package: mysql-devel-5.1.69-1.el6_4.x86_64 (updates)
Requires: mysql = 5.1.69-1.el6_4
Installed: mysql-5.5.28-1.el6.remi.x86_64 (@remi)
mysql = 5.5.28-1.el6.remi
Available: mysql-5.1.66-2.el6_3.x86_64 (base)
mysql = 5.1.66-2.el6_3
Available: mysql-5.1.67-1.el6_3.x86_64 (updates)
mysql = 5.1.67-1.el6_3
Available: mysql-5.1.69-1.el6_4.x86_64 (updates)
mysql = 5.1.69-1.el6_4
You could try using --skip-broken to work around the problem
请有人帮助我摆脱这种情况。感谢。
编辑详情:以下是我发布命令时发现的内容:ls -l /etc/yum.repos.d/
-rw-r--r-- 1 root root 1926 Jun 26 2012 CentOS-Base.repo
-rw-r--r-- 1 root root 637 Jun 26 2012 CentOS-Debuginfo.repo
-rw-r--r-- 1 root root 626 Jun 26 2012 CentOS-Media.repo
-rw-r--r-- 1 root root 2593 Jun 26 2012 CentOS-Vault.repo
-rw-r--r-- 1 root root 475 Aug 19 2012 ZabbixZone.repo
-rw-r--r-- 1 root root 1056 Nov 5 2012 epel-testing.repo
-rw-r--r-- 1 root root 957 Aug 21 2012 epel.repo
-rw-r--r-- 1 root root 739 Nov 13 2010 mirrors-rpmforge
-rw-r--r-- 1 root root 717 Nov 13 2010 mirrors-rpmforge-extras
-rw-r--r-- 1 root root 728 Nov 13 2010 mirrors-rpmforge-testing
-rw-r--r-- 1 root root 633 Nov 13 2010 remi.repo
-rw-r--r-- 1 root root 1113 Aug 21 2012 rpmforge.repo
-rw-r--r-- 1 root root 401 Jan 25 23:10 zabbix.repo
编辑详情:最后问题得到解决,非常感谢Michael Tabolsky和Joao Figueiredo。 :
cat /etc/yum.repos.d/remi.repo
并发现remi repo已被禁用。然后通过
进行编辑vi /etc/yum.repos.d/remi.repo。
将 enabled=0
更改为 enabled=1
。然后做了 yum install mysql-devel
并且它有效。
答案 0 :(得分:3)
您的问题不是安装zabbix,而是编译它。你错过了mysql标题。 yum install mysql-devel
但是,我真的不知道你为什么要编译。也是旧版本。对于el发行版(RHEL,CentOS,Scientific)使用EPEL repo,它有2.0。
编辑:根据要求链接到EPEL回购,按照您的分发说明:
http://fedoraproject.org/wiki/EPEL
然后yum list zabbix2*
并安装你需要的东西。
你的sql文件在这里
rpm -ql zabbix-server-mysql-2.0.5-1.el6.x86_64 | grep create /usr/share/doc/zabbix-server-mysql-2.0.5/create /usr/share/doc/zabbix-server-mysql-2.0.5/create/data.sql /usr/share/doc/zabbix-server-mysql-2.0.5/create/images.sql /usr/share/doc/zabbix-server-mysql-2.0.5/create/schema.sql
答案 1 :(得分:1)
尝试, 你的方式过于复杂。
为什么要尝试编译这样一个过时的版本? 我上次编辑1.8的时间大约是一年前。
虽然您没有指定发行版,但您可以从此处跟进,
https://www.zabbix.com/documentation/2.0/manual/installation/install_from_packages