Closed callebstrom closed 5 years ago
( I changed the title.)
Edited: I recommend that you use other linux distribution.
I have not heard that Oracle database interfaces for ruby, node-js, python, php and any other scripting languages run on alpine.
Alpine linux is based on musl libc. On the other hand Oracle client library depends on glibc. If all the following things succeed fortunately, you are the first person to run ruby-oci8 on alpine.
If the step 1 passes and others fail, compile ruby and ruby-oci8 on a glibc-based linux distribution and copy them to alpine.
@kubo Thanks for the quick reply. I just realized there was a similar issue submitted, sorry about that.
In my case though I actually had an Alpine container with glibc installed (running parallell to musl libc). Now that you mention it I suspect the issue is that ruby isn't actually compiled using glibc (I only tried compiling ruby-oci8).
I will try your suggested steps, thanks!
For future reference; thanks to @frol there is a great Alpine container with glibc (https://hub.docker.com/r/frolvlad/alpine-glibc/).
Hi!
I'm having issues building the native gem on Alpine 3.6 using Ruby 2.4.0 with the 12.2.0.1.0 of Oracle Instant Client (basic, sql plus and sdk).
I'm getting the following error:
This output seems to be indicating that OCIEnvCreate is not defined in oci.h however, when checking the mkmf.log this seems to be what's causing the issue:
It seems like as the definition is missing, the return type is set to int and therefore mismatches the actual implementation that is linked at runtime.
Am I barking up the wrong tree here? Have you encountered this behaviour before?
Appreciate any input on this as I've been struggling with this for over a day now, thanks!
Best regards, Calle