Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile with older glibc version? #1

Open
R2ZER0 opened this issue Jan 12, 2022 · 1 comment
Open

Compile with older glibc version? #1

R2ZER0 opened this issue Jan 12, 2022 · 1 comment

Comments

@R2ZER0
Copy link

R2ZER0 commented Jan 12, 2022

Thanks for making this extension, i look forward to trying it out!

Description

I've installed v0.0.7, as far as i can tell it makes use of a bundled binary mls compiled against glibc 2.28, but i'm using Amazon Linux 2 which comes with the older glibc 2.26 so the mls binary isn't able to run.

Output:

Starting...
[Info  - 11:25:14] Connection to server got closed. Server will restart.
/home/ec2-user/.vscode-server/extensions/betajob.modulestf-0.0.7/out/mls: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by /home/ec2-user/.vscode-server/extensions/betajob.modulestf-0.0.7/out/mls)

I'd be happy to build from source against my older glibc if you can point me in that direction?

Ideally i'd suggest building bundled binaries with an old enough glibc to be widely compatible, for example Python's manylinux wheel build system uses docker containers with old versions of glibc.

Versions

Note that I'm using Remote: SSH support to install this extension on a remote EC2 instance.

Remote VSCode server version:

$HOME/.vscode-server/bin/899d46d82c4c95423fb7e10e68eba52050e30ba3/bin/code --version
1.63.2
899d46d82c4c95423fb7e10e68eba52050e30ba3
x64

Local VSCode version:

Version: 1.63.2
Commit: 899d46d82c4c95423fb7e10e68eba52050e30ba3
Date: 2021-12-15T09:39:46.686Z
Electron: 13.5.2
Chromium: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Linux x64 5.11.0-46-generic snap

mls requires glibc 2.28:

> ldd mls 
./mls: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by ./mls)
        linux-vdso.so.1 (0x00007ffe78353000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fbc57acc000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fbc578b6000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fbc57698000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fbc57358000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fbc57154000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fbc56da9000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fbc5822e000)

Amazon Linux has glibc 2.26:

> cat /etc/os-release 
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"

> /lib64/libc.so.6
GNU C Library (GNU libc) stable release version 2.26, by Roland McGrath et al.
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 7.3.1 20180712 (Red Hat 7.3.1-13).
Available extensions:
        crypt add-on version 2.1 by Michael Glad and others
        GNU Libidn by Simon Josefsson
        Native POSIX Threads Library by Ulrich Drepper et al
        BIND-8.2.3-T5B
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.

Reproduction

Steps to reproduce the behavior:

  1. Spin up an EC2 instance running Amazon Linux 2 (i used AWS Cloud9)
  2. Use VSCode's Remote: SSH support to access the EC2 instance
  3. Install this extension
  4. Restart VSCode and remote connect again
  5. A popup will appear saying A request has failed. See the output for more information. Source: Terraform (Extension) with a button to see the output.

Expected behavior

The binary should run.

Actual behavior

The bundled binary doesn't run because it was compiled against a newer version of glibc.

@antonbabenko
Copy link
Contributor

Thank you very much for trying out the early version of our extension and opening this issue!

We will take a look and see what we can do about it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants