[ZBX-16346] Can't configure and build zabbix-server for Oracle Instant Client for Linux x86-64 v18.5 Created: 2019 Jul 05 Updated: 2019 Aug 16 Resolved: 2019 Aug 16 |
|
Status: | Closed |
Project: | ZABBIX BUGS AND ISSUES |
Component/s: | Proxy (P), Server (S) |
Affects Version/s: | 4.0.10, 4.2.4 |
Fix Version/s: | 4.0.12rc1, 4.2.6rc1, 4.4.0alpha2, 4.4 (plan) |
Type: | Problem report | Priority: | Trivial |
Reporter: | Mikhail Grigorev | Assignee: | Aleksejs Sestakovs |
Resolution: | Fixed | Votes: | 0 |
Labels: | oracle | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified | ||
Environment: |
Oracle Linux 7.6, Oracle Instant Client for Linux x86-64 v18.5.0.0.0 |
Attachments: | config.log |
Team: | Team C |
Sprint: | Sprint 55 (Aug 2019), Sprint 54 (Jul 2019) |
Story Points: | 0.5 |
Description |
Steps to reproduce: cd zabbix-4.2.4 ./configure --enable-server --with-libcurl --with-libxml2 --with-net-snmp --with-openssl --sysconfdir=/etc/zabbix --with-oracle --with-oracle-lib=/usr/lib/oracle/18.5/client64/lib --with-oracle-include=/usr/include/oracle/18.5/client64 Result: ... checking for libperfstat 5.2.0.40 fileset... no checking for libperfstat 5.3.0.60 fileset... no checking for architecture... linux (linux-gnu) checking for the linux kernel version... unknown family (3.10.0-957.21.3.el7.x86_64) checking size of void *... 8 checking for Oracle OCI headers in /usr/include/oracle/18.5/client64... yes expr: syntax error checking if Oracle OCI version is >= 10.0... no configure: WARNING: Oracle version unknown, probably OCI older than 10.2 is available checking for Oracle OCI version >= 10.x to use -lnnz1x flag... expr: syntax error ./configure: line 8711: test: : integer expression expected no checking for Oracle OCI libraries in /usr/lib/oracle/18.5/client64/lib... not found checking for Oracle support... no configure: error: Oracle OCI library not found |
Comments |
Comment by Alexey Pustovalov [ 2019 Jul 05 ] |
Hello! Please attach config.log to the issue. |
Comment by Mikhail Grigorev [ 2019 Jul 06 ] |
Hi, config.log is attached. |
Comment by Alexey Pustovalov [ 2019 Jul 06 ] |
Try this one: LD_LIBRARY_PATH="/usr/lib/oracle/18.5/client64/lib/" ./configure --enable-server --with-libcurl --with-libxml2 --with-net-snmp --with-openssl --sysconfdir=/etc/zabbix --with-oracle --with-oracle-lib=/usr/lib/oracle/18.5/client64/lib --with-oracle-include=/usr/include/oracle/18.5/client64 LD_LIBRARY_PATH="/usr/lib/oracle/18.5/client64/lib/" make |
Comment by Mikhail Grigorev [ 2019 Jul 08 ] |
Yes, you can do this and build a zabbix-server, but this is a non-standard solution, because requires the user to specify an additional LD_LIBRARY_PATH setting. For Oracle Instant Client 12.2, LD_LIBRARY_PATH is not required. If you take a deeper look at the problem, you’ll see that starting with Oracle 18c, the OCI_MAJOR_VERSION and OCI_MINOR_VERSION macro definitions no longer exist in the /usr/include/oracle/18.5/client64/oci.h, they are now in file /usr/include/oracle/18.5/client64/ociver.h The correct solution is to modify the configure script so that it takes into account the presence of the /usr/include/oracle/18.5/client64/ociver.h file and parses this file. |
Comment by Alexey Pustovalov [ 2019 Jul 08 ] |
Yes, I agree with you. Anyway compilation is ok with additional flags, but detection Oracle version is not correct since 18 version. |
Comment by Aleksejs Sestakovs [ 2019 Aug 05 ] |
Available in versions:
|