origin: Command Line Tools not working on Ubuntu 18

Command Line Tools available on https://mirror.openshift.com/pub/openshift-v3/clients/3.11.0-0.21.0/linux/oc.tar.gz does not working on Ubuntu 18.

Version

3.11?

Steps To Reproduce
  1. Download https://mirror.openshift.com/pub/openshift-v3/clients/3.11.0-0.21.0/linux/oc.tar.gz
  2. Extract
  3. Try to run oc <command>
Current Result

libcrypto.so.10: cannot open shared object file: No such file or directory

Expected Result

It should work.

Additional Information

The version from https://github.com/openshift/origin/releases/download/v3.10.0/openshift-origin-client-tools-v3.10.0-dd10d17-linux-64bit.tar.gz works on Ubuntu 18.

Current versions of libssl for Ubuntu 18

libssl1.0.0/bionic-updates,bionic-security,now 1.0.2n-1ubuntu5.1 libssl1.1/bionic-updates,bionic-security,now 1.1.0g-2ubuntu4.1

These versions are not compatible as far as I tested.

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 11
  • Comments: 34 (20 by maintainers)

Most upvoted comments

For folks using OpenShift 4 during the preview/beta phase, @smarterclayton has also suggested https://artifacts-openshift-master.svc.ci.openshift.org/zips/ as a source of Ubuntu-compatible clients. Checking:

$ wget https://artifacts-openshift-master.svc.ci.openshift.org/zips/openshift-origin-client-tools-v4.0.0-alpha.0-3bc8da4-1481-linux-64bit.tar.gz
$ tar -xvf openshift-origin-client-tools-v4.0.0-alpha.0-3bc8da4-1481-linux-64bit.tar.gz --strip-components 1
$ lddtree oc
oc => ./oc (interpreter => /lib64/ld-linux-x86-64.so.2)
    libpthread.so.0 => /lib64/libpthread.so.0
        ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
    libdl.so.2 => /lib64/libdl.so.2
    libc.so.6 => /lib64/libc.so.6

So that looks good compared to the most recent v4 build from the release page:

$ wget https://mirror.openshift.com/pub/openshift-v3/clients/4.0.17/linux/oc.tar.gz
$ tar -xf oc.tar.gz
$ lddtree oc
oc => ./oc (interpreter => /lib64/ld-linux-x86-64.so.2)
    libpthread.so.0 => /lib64/libpthread.so.0
        ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
    libcrypto.so.10 => /lib64/libcrypto.so.10
        libz.so.1 => /lib64/libz.so.1
    libdl.so.2 => /lib64/libdl.so.2
    libc.so.6 => /lib64/libc.so.6

I’m not sure what the difference is in building that’s pulling in libcrypto or not.

@wangjun1974 I searched for package that provides libcrypto.so.10 and installed it.

yum provides "*libcrypto.so.10"

AND

yum install compat-openssl10

I am hitting the same issue on both 16.04 and 18.04. This is a blocker. Symlink does not work as mentioned above:

./oc
./oc: /lib/x86_64-linux-gnu/libcrypto.so.10: version `OPENSSL_1.0.1_EC' not found (required by ./oc)
./oc: /lib/x86_64-linux-gnu/libcrypto.so.10: version `libcrypto.so.10' not found (required by ./oc)

The solution above yum provides “*libcrypto.so.10”

AND

yum install compat-openssl10

works on RHEL8

#22595 is the short-term fix for this, so folks with subsequent builds should be fine. The next step is to do something smart with dlopen so folks can opt-in to a system libcrypto without requiring everyone to have the same system libcrypto, but users that don’t care one way or the other can probably stop worrying about this issue now. Not sure if that means “close this bug” or not 😉.

It has to do with the FIPS mode crypto behavior in fedora/rhel golang. Still being worked on - it should have been using dlopen instead of a shared library. We will either disable it or fix it before the next drop.

On Fri, Mar 8, 2019 at 3:29 PM Jose Quaresma notifications@github.com wrote:

Thanks @wking https://github.com/wking , I was facing the same issue in on Ubuntu WSL on Windows 10 and I can confirm that the binaries suggested by @smarterclayton https://github.com/smarterclayton work!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/openshift/origin/issues/21061#issuecomment-471066235, or mute the thread https://github.com/notifications/unsubscribe-auth/ABG_p_wpVGtihGCWmt-UpW_NvPlp0_QGks5vUsg8gaJpZM4WyoYx .

Is the OS Origin client compatible with the enterprise edition of OS Container Platform?

Yes, within the standard +/-1 version drift between client and server.

If I create a symlink to use these versions it fails because the headers aren’t compatible. My guess Ubuntu has a newer version and oc uses an older one.