[ZBXNEXT-5041] Precompiled ZBX 4.0.4 Agent on AIX 7.1 Created: 2019 Feb 14 Updated: 2020 Jul 22 |
|
Status: | Open |
Project: | ZABBIX FEATURE REQUESTS |
Component/s: | Agent (G) |
Affects Version/s: | 4.0.3, 4.0.4 |
Fix Version/s: | None |
Type: | Change Request | Priority: | Major |
Reporter: | Marcus Griesing | Assignee: | Michael Veksler |
Resolution: | Unresolved | Votes: | 2 |
Labels: | None | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified | ||
Environment: |
ZBX 4.0.4 Agent on AIX 7.1 |
Issue Links: |
|
Description |
Dear Zabbix Support Team, We recognize Errors on Compilation of the ZBX4.0.x Agent on our AIX 7.1 Systems. Here is the Output of our AIX Technician: ./configure --enable-agent --enable-ipv6 --with-net-snmp --with-libxml2 --with-openssl I tried to "make install", but this stopped in several errors: In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:582:12: error: conflicting types for 'fgetpos64' extern int fgetpos64(FILE *, fpos64_t *); ^~~~~~~~~ In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:377:12: note: previous declaration of 'fgetpos64' was here extern int fgetpos(FILE *__restrict__, fpos_t *__restrict__); ^~~~~~~ In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:585:12: error: conflicting types for 'fseeko64' extern int fseeko64(FILE *, off64_t, int); ^~~~~~~~ In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:525:12: note: previous declaration of 'fseeko64' was here extern int fseeko(FILE *, off_t, int); ^~~~~~ In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:586:12: error: conflicting types for 'fsetpos64' extern int fsetpos64(FILE *, const fpos64_t *); ^~~~~~~~~ In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:379:12: note: previous declaration of 'fsetpos64' was here extern int fsetpos(FILE *, const fpos_t *); ^~~~~~~ In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:587:16: error: conflicting types for 'ftello64' extern off64_t ftello64(FILE *); ^~~~~~~~ In file included from ../../../../include/sysinc.h:26, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:526:14: note: previous declaration of 'ftello64' was here extern off_t ftello(FILE *); ^~~~~~ In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234, from ../../../../include/sysinc.h:157, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:210:16: error: conflicting types for 'lseek64' extern off64_t lseek64(int, off64_t, int); ^~~~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:208:14: note: previous declaration of 'lseek64' was here extern off_t lseek(int, off_t, int); ^~~~~ In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:866, from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234, from ../../../../include/sysinc.h:157, from ../../../../include/common.h:23, from cpu.c:21: /usr/include/sys/lockf.h:64:13: error: conflicting types for 'lockf64' extern int lockf64 (int, int, off64_t); ^~~~~~~ /usr/include/sys/lockf.h:62:13: note: previous declaration of 'lockf64' was here extern int lockf (int, int, off_t); ^~~~~ In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234, from ../../../../include/sysinc.h:157, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:939:14: error: conflicting types for 'ftruncate64' extern int ftruncate64(int, off64_t); ^~~~~~~~~~~ In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234, from ../../../../include/sysinc.h:157, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:937:14: note: previous declaration of 'ftruncate64' was here extern int ftruncate(int, off_t); ^~~~~~~~~ In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234, from ../../../../include/sysinc.h:157, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:996:14: error: conflicting types for 'truncate64' extern int truncate64(const char *, off64_t); ^~~~~~~~~~ In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234, from ../../../../include/sysinc.h:157, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:994:14: note: previous declaration of 'truncate64' was here extern int truncate(const char *, off_t); ^~~~~~~~ In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234, from ../../../../include/sysinc.h:157, from ../../../../include/common.h:23, from cpu.c:21: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1015:18: error: conflicting types for 'pread64' extern ssize_t pread64(int, void *, size_t, off64_t); ^~~~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1012:18: note: previous declaration of 'pread64' was here extern ssize_t pread(int, void *, size_t, off_t); ^~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1016:18: error: conflicting types for 'pwrite64' extern ssize_t pwrite64(int, const void *, size_t, off64_t); ^~~~~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1013:18: note: previous declaration of 'pwrite64' was here extern ssize_t pwrite(int, const void *, size_t, off_t); ^~~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1101:17: error: conflicting types for 'fclear64' extern off64_t fclear64(int, off64_t); ^~~~~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1098:15: note: previous declaration of 'fclear64' was here extern off_t fclear(int, off_t); ^~~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1102:13: error: conflicting types for 'fsync_range64' extern int fsync_range64(int, int, off64_t, off64_t); ^~~~~~~~~~~~~ /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1099:13: note: previous declaration of 'fsync_range64' was here extern int fsync_range(int, int, off_t, off_t); ^~~~~~~~~~~ make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. Regards, Marcus |
Comments |
Comment by Andris Mednis [ 2019 Feb 14 ] |
Hi, Marcus! Can you try: $ OBJECT_MODE=64 ; export OBJECT_MODE $ CFLAGS="-maix64 -g -O2" ./configure --enable-agent --enable-ipv6 --with-openssl $ make install |
Comment by Enrico Becker [ 2019 Feb 15 ] |
Hi, we tried this and I think we had a little progress, but came to an error: ld: 0711-224 WARNING: Duplicate symbol: Hyp_Name ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. ld: 0711-317 ERROR: Undefined symbol: .libiconv_open ld: 0711-317 ERROR: Undefined symbol: .libiconv ld: 0711-317 ERROR: Undefined symbol: .libiconv_close collect2: error: ld returned 8 exit status make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. Seams to be a problem with the LD-Library path, but don't know how to fix that the right way! |
Comment by Andris Mednis [ 2019 Feb 18 ] |
Hi, enrico.becker ! It could be that you have only 32-bit libiconv installed. Take a look at comment how to compile a 64-bit libiconv and then Zabbix agent. It was written almost 3 years ago, today probably there are newer versions available. |
Comment by Enrico Becker [ 2019 Feb 19 ] |
Hi Andris. Thanks for your hint. I compiled libiconv version 1.15 as you suggested in 64-bit: ar -tv -X64 lib/libiconv.a rw-r--r-- 0/0 1657366 Feb 19 08:14 2019 iconv.o rw-r--r-- 0/0 43724 Feb 19 08:14 2019 localcharset.o rw-r--r-- 0/0 37981 Feb 19 08:14 2019 relocatable.o r--r--r-- 0/0 310633 Feb 19 08:14 2019 shr4_64.o file bin/iconv bin/iconv: 64-bit XCOFF executable or object module not stripped But after configure zabbix again I got the same error. here is what I do and get: {{CFLAGS="-maix64 -g -O2" ./configure --enable-agent --enable-ipv6 --with-openssl --with-net-snmp --with-libxml2 --with-iconv=/tmp/libiconv-1.15 --prefix=`pwd`}} Configuration:Detected OS: aix7.1.5.0 Install path: /tmp/zabbix/zabbix-4.0.4 Compilation arch: aix Compiler: /tmp/zabbix/zabbix-4.0.4/compile cc Compiler flags: -maix64 -g -O2 Library-specific flags: TLS: -I/usr/include iconv: -I/tmp/libiconv-1.15/include Enable server: no Enable proxy: no Enable agent: yes Agent details: TLS: OpenSSL Linker flags: -L/usr/lib -L/tmp/libiconv-1.15/lib Libraries: -lssl -lcrypto -lm -lperfstat -lpcre -liconv Configuration file: /tmp/zabbix/zabbix-4.0.4/etc/zabbix_agentd.conf Modules: /tmp/zabbix/zabbix-4.0.4/lib/modules Enable Java gateway: no LDAP support: no IPv6 support: yes And after "make install" I got: ld: 0711-224 WARNING: Duplicate symbol: Hyp_Name ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. ld: 0711-317 ERROR: Undefined symbol: .libiconv_open ld: 0711-317 ERROR: Undefined symbol: .libiconv ld: 0711-317 ERROR: Undefined symbol: .libiconv_close collect2: error: ld returned 8 exit status make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 1. Stop. Regards, Enrico |
Comment by Andris Mednis [ 2019 May 16 ] |
Maybe you can use agent compiled on AIX 6.1 on an AIX 7.1 machine?
|
Comment by Andrzej [ 2019 Sep 18 ] |
Hi In our company we have the same problem. AIX 6.1 version zabbix agent 4.2.6.
$ OBJECT_MODE=64 ; export OBJECT_MODE
$ CFLAGS="-maix64 -g -O2" ./configure --enable-agentĀ
$ make install
I got an error like Becker described. But I checked if a binary was created in the src directory in directory zabbix-4.2.6. Surprise was in this directory. Next i did ./zabbix_agent -V and got a response. I create zabbix_agent.conf and run this agent. It work Agent Zabbix send value to Zabbix Server. |