Strange behavior (different than Ubuntu)

3 posts / 0 new
Last post
#1 Fri, 2016-07-01 19:14
zhanxw
  • zhanxw's picture
  • Offline
  • Last seen: 6 months 4 weeks ago
  • Joined: 2016-07-01

Hello,

The following commands failed in the alpine linux docker:

Container:

docker run --rm -ti alpine:latest /bin/sh
apk update
apk add bash make gcc g++ gfortran git wget zlib-dev

Failed command:

# cd /tmp && \
> # Download MKL install package
> wget -q http://registrationcenter-download.intel.com/akdlm/irc_nas/8374/l_mkl_11.3.1.150.tgz && \
> # Install MKL
> tar -xzf l_mkl_11.3.1.150.tgz && cd l_mkl_11.3.1.150 && \
> sed -i 's/ACCEPT_EULA=decline/ACCEPT_EULA=accept/g' silent.cfg && \
> sed -i 's/ACTIVATION_TYPE=exist_lic/ACTIVATION_TYPE=trial_lic/g' silent.cfg && \
> ./install.sh -s silent.cfg
Illegal option -p
./install.sh: line 587: /tmp/l_mkl_11.3.1.150/./pset/32e/install: not found

The last line said "/tmp/l_mkl_11.3.1.150/./pset/32e/install" not found, but I can see the file there.

When I used the same command in a Ubuntu container, the above command ran fine.
I have no clue why ./install.sh failed in alpine Linux and succeed in Ubuntu.
Is there anyone giving some hints?

Thanks.

Sat, 2016-07-02 03:45
AmatCoder
  • AmatCoder's picture
  • Offline
  • Last seen: 1 year 4 months ago
  • Joined: 2013-10-18

That 'install' file is a binary linked against glibc. But Alpine uses musl library instead, so it gives you the error 'not found' (yes, that error message is not very useful to diagnose...)

However, musl provides some level of binary compatibility with binaries compiled for glibc, so you can try it with: apk add libc6-compat

Wed, 2016-07-06 06:49 (Reply to #2)
zhanxw
  • zhanxw's picture
  • Offline
  • Last seen: 6 months 4 weeks ago
  • Joined: 2016-07-01

Thanks for looking into this.
I installed libc6-compat, but got the same error.

Then, I googled "Error relocating __strtod_internal: symbol not found".
The search results basically said that __strtod_internal is the glibc thing, and alpine-linux (or musl) does not have this.
It has caused problems for many other software, and there is no solution yet...

Log in or register to post comments