Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 792471 - dev-db/ocp-0.3 - configure: error: This software requires Oracle installation
Summary: dev-db/ocp-0.3 - configure: error: This software requires Oracle installation
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Max Satula
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-05-27 11:06 UTC by Toralf Förster
Modified: 2024-04-11 11:43 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,17.46 KB, text/plain)
2021-05-27 11:06 UTC, Toralf Förster
Details
dev-db:ocp-0.3:20210527-094920.log (dev-db:ocp-0.3:20210527-094920.log,4.01 KB, text/plain)
2021-05-27 11:06 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,289.75 KB, text/plain)
2021-05-27 11:06 UTC, Toralf Förster
Details
environment (environment,20.59 KB, text/plain)
2021-05-27 11:06 UTC, Toralf Förster
Details
etc.portage.tar.bz2 (etc.portage.tar.bz2,24.97 KB, application/x-bzip)
2021-05-27 11:06 UTC, Toralf Förster
Details
logs.tar.bz2 (logs.tar.bz2,4.72 KB, application/x-bzip)
2021-05-27 11:06 UTC, Toralf Förster
Details
temp.tar.bz2 (temp.tar.bz2,7.95 KB, application/x-bzip)
2021-05-27 11:06 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2021-05-27 11:06:50 UTC
checking for Oracle OCI libraries in /usr/lib64/oracle/client/lib... not found
checking if Oracle support is enabled... no
configure: error: 
----------------------------------------------
  This software requires Oracle installation
    1. Have you set $ORACLE_HOME?
    2. Check if Oracle Home 64/32-bit is OK

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1_desktop_systemd-j2_abi32+64-20210521-112000

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-11.1.0 *
clang version 12.0.0
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/12/bin
/usr/lib/llvm/12
12.0.0
Python 3.8.10
Available Ruby profiles:
  (none found)
Available Rust versions:
  [1]   rust-1.52.1 *
The following VMs are available for generation-2:
*)	AdoptOpenJDK 8.292_p10 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8  system-vm

The Glorious Glasgow Haskell Compilation System, version 8.10.4

  timestamp(s) of HEAD at this tinderbox image:
/var/db/repos/gentoo	Thu May 27 08:50:23 UTC 2021

emerge -qpvO dev-db/ocp
[ebuild  N    ] dev-db/ocp-0.3
Comment 1 Toralf Förster gentoo-dev 2021-05-27 11:06:51 UTC
Created attachment 711687 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2021-05-27 11:06:52 UTC
Created attachment 711690 [details]
dev-db:ocp-0.3:20210527-094920.log
Comment 3 Toralf Förster gentoo-dev 2021-05-27 11:06:53 UTC
Created attachment 711693 [details]
emerge-history.txt
Comment 4 Toralf Förster gentoo-dev 2021-05-27 11:06:55 UTC
Created attachment 711696 [details]
environment
Comment 5 Toralf Förster gentoo-dev 2021-05-27 11:06:56 UTC
Created attachment 711699 [details]
etc.portage.tar.bz2
Comment 6 Toralf Förster gentoo-dev 2021-05-27 11:06:57 UTC
Created attachment 711702 [details]
logs.tar.bz2
Comment 7 Toralf Förster gentoo-dev 2021-05-27 11:06:58 UTC
Created attachment 711705 [details]
temp.tar.bz2
Comment 8 Max Satula 2021-05-30 15:18:50 UTC
I hate to say that, "it works on my machine"

However, I use Funtoo if that makes a difference...

What is in /usr/lib64/oracle/client/lib directory? Is there libclntsh.so symbolic link in that directory which points to a 64-bit shared object? (Based on your comments, I assume we are talking about 64-bit system)
What is a version of instant client you have? (Well, I tested it with 11g, 12c, and 18c back in the day)
Comment 9 Toralf Förster gentoo-dev 2021-05-30 16:08:02 UTC
(In reply to Max Satula from comment #8)
> I hate to say that, "it works on my machine"
> 
> However, I use Funtoo if that makes a difference...
> 
> What is in /usr/lib64/oracle/client/lib directory? Is there libclntsh.so
> symbolic link in that directory which points to a 64-bit shared object?
> (Based on your comments, I assume we are talking about 64-bit system)
> What is a version of instant client you have? (Well, I tested it with 11g,
> 12c, and 18c back in the day)

tinderbox@mr-fox ~/img/17.1_desktop_systemd-j2_abi32+64-20210521-112000/usr/lib64/oracle/client/lib $ ls -al
total 193776
drwxr-xr-x 1 root root       576 May 27 11:49 .
drwxr-xr-x 1 root root        66 May 27 11:49 ..
-rwxr-xr-x 1 root root   2780488 May 27 11:48 libclntshcore.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.10.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.11.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.12.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.18.1 -> libclntsh.so.19.1
-rwxr-xr-x 1 root root  52905844 May 27 11:48 libclntsh.so.19.1
-rwxr-xr-x 1 root root   4813240 May 27 11:48 libnnz19.so
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.10.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.11.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.12.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.18.1 -> libocci.so.19.1
-rwxr-xr-x 1 root root   1019440 May 27 11:48 libocci.so.19.1
-rwxr-xr-x 1 root root 130503976 May 27 11:48 libociei.so
-rwxr-xr-x 1 root root    133736 May 27 11:48 libocijdbc19.so
-rwxr-xr-x 1 root root     51816 May 27 11:48 liboramysql19.so
-rw-r--r-- 1 root root   4395452 May 27 11:48 ojdbc8.jar
lrwxrwxrwx 1 root root         6 May 27 11:48 sdk -> ../sdk
-rw-r--r-- 1 root root   1680537 May 27 11:48 ucp.jar
-rw-r--r-- 1 root root     74263 May 27 11:48 xstreams.jar
tinderbox@mr-fox ~/img/17.1_desktop_systemd-j2_abi32+64-20210521-112000/usr/lib64/oracle/client/lib $ file libclntshcore.so.19.1
libclntshcore.so.19.1: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=0fd9d5a0dcf73d039a25994d87524b0ded6cffeb, stripped
Comment 10 Max Satula 2021-05-30 17:13:26 UTC
(In reply to Toralf Förster from comment #9)
> (In reply to Max Satula from comment #8)
> ~/img/17.1_desktop_systemd-j2_abi32+64-20210521-112000/usr/lib64/oracle/
> client/lib $ file libclntshcore.so.19.1
> libclntshcore.so.19.1: ELF 32-bit LSB shared object, Intel 80386, version 1
> (SYSV), dynamically linked,
> BuildID[sha1]=0fd9d5a0dcf73d039a25994d87524b0ded6cffeb, stripped

So it is trying to use a 32-bit oracle library for a 64-bit binary.
On my pure 64-bit installation /usr/lib64/oracle/client/lib is a symbolic link to lib64 directory.
Does your Gentoo installation have multilib support (to support both 32 and 64 bits)? Isn't that architecture deprecated yet? (Just asking)
As a possible workaround, please check if you have /usr/lib64/oracle/client/lib and /usr/lib64/oracle/client/lib64 as independent directories, not links, and if so, that is the case. You actually need the 64 bit one. One way to do it is to rename /usr/lib64/oracle/client/lib directory to something else and make a symbolic link on lib64 with a name of lib instead, e.g.

cd /usr/lib64/oracle/client/
mv lib lib-32-temporarily-renamed
ln -s lib64 lib

And retry the build
Comment 11 Toralf Förster gentoo-dev 2021-05-30 17:19:24 UTC
yes, ABI_X86="32 64" is set (see attached etc.portage.tar.bz2)


The dirs are independent :

tinderbox@mr-fox ~/img/17.1_desktop_systemd-j2_abi32+64-20210521-112000/usr/lib64/oracle/client $ ls -ld lib*
drwxr-xr-x 1 root root 576 May 27 11:49 lib
drwxr-xr-x 1 root root 700 May 27 11:49 lib64

tinderbox@mr-fox ~/img/17.1_desktop_systemd-j2_abi32+64-20210521-112000/usr/lib64/oracle/client $ ls -l lib*
lib:
total 193776
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.10.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.11.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.12.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.18.1 -> libclntsh.so.19.1
-rwxr-xr-x 1 root root  52905844 May 27 11:48 libclntsh.so.19.1
-rwxr-xr-x 1 root root   2780488 May 27 11:48 libclntshcore.so.19.1
-rwxr-xr-x 1 root root   4813240 May 27 11:48 libnnz19.so
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.10.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.11.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.12.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.18.1 -> libocci.so.19.1
-rwxr-xr-x 1 root root   1019440 May 27 11:48 libocci.so.19.1
-rwxr-xr-x 1 root root 130503976 May 27 11:48 libociei.so
-rwxr-xr-x 1 root root    133736 May 27 11:48 libocijdbc19.so
-rwxr-xr-x 1 root root     51816 May 27 11:48 liboramysql19.so
-rw-r--r-- 1 root root   4395452 May 27 11:48 ojdbc8.jar
lrwxrwxrwx 1 root root         6 May 27 11:48 sdk -> ../sdk
-rw-r--r-- 1 root root   1680537 May 27 11:48 ucp.jar
-rw-r--r-- 1 root root     74263 May 27 11:48 xstreams.jar

lib64:
total 213324
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.10.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.11.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.12.1 -> libclntsh.so.19.1
lrwxrwxrwx 1 root root        17 May 27 11:48 libclntsh.so.18.1 -> libclntsh.so.19.1
-rwxr-xr-x 1 root root  65364128 May 27 11:48 libclntsh.so.19.1
-rwxr-xr-x 1 root root   3742680 May 27 11:48 libclntshcore.so.19.1
-rwxr-xr-x 1 root root   2579184 May 27 11:48 libipc1.so
-rwxr-xr-x 1 root root    393968 May 27 11:48 libmql1.so
-rwxr-xr-x 1 root root   5532208 May 27 11:48 libnnz19.so
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.10.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.11.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.12.1 -> libocci.so.19.1
lrwxrwxrwx 1 root root        15 May 27 11:48 libocci.so.18.1 -> libocci.so.19.1
-rwxr-xr-x 1 root root    951312 May 27 11:48 libocci.so.19.1
-rwxr-xr-x 1 root root 130513024 May 27 11:48 libociei.so
-rwxr-xr-x 1 root root    125648 May 27 11:48 libocijdbc19.so
-rwxr-xr-x 1 root root     73528 May 27 11:48 liboramysql19.so
-rwxr-xr-x 1 root root    968616 May 27 11:48 libsqlplus.so
-rwxr-xr-x 1 root root   1656880 May 27 11:48 libsqlplusic.so
-rw-r--r-- 1 root root   4395452 May 27 11:48 ojdbc8.jar
-rw-r--r-- 1 root root    313021 May 27 11:48 ottclasses.zip
lrwxrwxrwx 1 root root         6 May 27 11:48 sdk -> ../sdk
-rw-r--r-- 1 root root   1680537 May 27 11:48 ucp.jar
-rw-r--r-- 1 root root     74263 May 27 11:48 xstreams.jar
Comment 12 Max Satula 2021-05-30 17:23:54 UTC
Then I expect a temporary rename and create a link instead to be working
Comment 13 Max Satula 2021-06-02 03:25:28 UTC
(In reply to Toralf Förster from comment #11)

So, did a temporary rename with placing a link work for you? I know it is a workaround, not a solution.

Alternatively, please try this patch (I don't have a Gentoo with multilib profile to test on my own)

--- /var/tmp/portage/dev-db/ocp-0.3/work/ocp-0.3/configure~     2019-01-12 14:14:56.000000000 -0500
+++ /var/tmp/portage/dev-db/ocp-0.3/work/ocp-0.3/configure      2021-05-31 10:38:21.959257852 -0400
@@ -3672,6 +3672,7 @@
                         oracle_include_dir2="$oracle_home_dir/rdbms/demo"

                         oracle_lib_dir="$oracle_home_dir/lib"
+                        oracle_lib_dir2="$oracle_home_dir/lib64"
         elif test "$oracle_home_dir" = "yes"; then
             want_oracle_but_no_path="yes"
         fi
@@ -3712,6 +3713,9 @@
                         saved_LDFLAGS="$LDFLAGS"
         saved_LIBS="$LIBS"
         oci_ldflags="-L$oracle_lib_dir"
+        if test -n "$oracle_lib_dir2"; then
+            oci_ldflags="$oci_ldflags -L$oracle_lib_dir2"
+        fi
         oci_libs="-lclntsh"
         LDFLAGS="$LDFLAGS $oci_ldflags"
         LIBS="$LIBS $oci_libs"