gpt4all icon indicating copy to clipboard operation
gpt4all copied to clipboard

libc.so.6: version `GLIBC_2.34' not found

Open provVladBurlik opened this issue 1 year ago • 11 comments

System Info

<Package>
    <Name>gpt4all</Name>
    <Title>gpt4all</Title>
    <Description></Description>
    <SortingPriority>0</SortingPriority>
    <TreeName moveChildren="false"></TreeName>
    <Version>2.4.19</Version>
    <LastUpdateDate></LastUpdateDate>
    <InstallDate>2023-10-07</InstallDate>
    <Size>403979845</Size>
    <ForcedInstallation>true</ForcedInstallation>
</Package>

python 3.8

Information

  • [X] The official example notebooks/scripts
  • [ ] My own modified scripts

Related Components

  • [ ] backend
  • [ ] bindings
  • [ ] python-bindings
  • [ ] chat-ui
  • [ ] models
  • [ ] circleci
  • [ ] docker
  • [ ] api

Reproduction

  1. Ubuntu 20.4
  2. Download gpt4all-installer-linux.run
  3. Install it, all default setting
  4. Lunch using desktop icon => does not start
  5. cd gpt4all/bin/
  6. ./chat => /chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by ./chat) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by libllmodel.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by libllmodel.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by libllmodel.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libxkbcommon.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/vladbph/gpt4all/bin/../lib/libgmodule-2.0.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libglib-2.0.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by /home/vladbph/gpt4all/bin/../lib/libglib-2.0.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/vladbph/gpt4all/bin/../lib/libglib-2.0.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libgssapi_krb5.so.2) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libkrb5.so.3) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/vladbph/gpt4all/bin/../lib/libkrb5.so.3) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libk5crypto.so.3) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libkrb5support.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/vladbph/gpt4all/bin/../lib/libkrb5support.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libdbus-1.so.3) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/vladbph/gpt4all/bin/../lib/libdbus-1.so.3) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libsystemd.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by /home/vladbph/gpt4all/bin/../lib/libsystemd.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/vladbph/gpt4all/bin/../lib/libsystemd.so.0) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by /home/vladbph/gpt4all/bin/../lib/liblzma.so.5) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/vladbph/gpt4all/bin/../lib/liblzma.so.5) ./chat: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /home/vladbph/gpt4all/bin/../lib/libcap.so.2)

Expected behavior

app starts

provVladBurlik avatar Oct 08 '23 04:10 provVladBurlik

Hm, looks like we are building against GLIBC 2.34 from August of 2021, but Ubuntu 20.04 uses something older.

cebtenzzre avatar Oct 08 '23 18:10 cebtenzzre

Hm, looks like we are building against GLIBC 2.34 from August of 2021, but Ubuntu 20.04 uses something older.

ubuntu 20.4 is using 3.x...

provVladBurlik avatar Oct 08 '23 18:10 provVladBurlik

ubuntu 20.4 is using 3.x...

That doesn't seem right. The latest version of glibc is 2.38, released July 31st.

cebtenzzre avatar Oct 08 '23 21:10 cebtenzzre

Ran on 2 different ubuntu 20.04 machines

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_3.4.25
GLIBCXX_3.4.26
GLIBCXX_3.4.27
GLIBCXX_3.4.28
GLIBCXX_3.4.29
GLIBCXX_3.4.30
GLIBCXX_3.4.31
GLIBCXX_3.4.32
GLIBCXX_TUNABLES
GLIBCXX_DEBUG_MESSAGE_LENGTH


provVladBurlik avatar Oct 08 '23 21:10 provVladBurlik

Ran on 2 different ubuntu 20.04 machines

You're looking at libstdc++/GLIBCXX versions, but this issue pertains to libc/GLIBC.

cebtenzzre avatar Oct 08 '23 22:10 cebtenzzre

Ok I see:

apt policy libc6
libc6:
  Installed: 2.31-0ubuntu9.9
  Candidate: 2.31-0ubuntu9.9
  Version table:
 *** 2.31-0ubuntu9.9 100
        100 /var/lib/dpkg/status
     2.31-0ubuntu9.7 500
        500 http://us.archive.ubuntu.com/ubuntu focal-security/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
     2.31-0ubuntu9 500
        500 http://us.archive.ubuntu.com/ubuntu focal/main amd64 Packages

when I try to upgrade libc6 says 2.31 is the latest version

provVladBurlik avatar Oct 08 '23 22:10 provVladBurlik

This isn't strange or unexpected.

The Linux release build happens on an Ubuntu 22.04 LTS system and as such uses what's available there. If you want to use a system with libraries that are potentially older than that, you'll have to build it yourself, at least for now.

This has been reported before, too. E.g. (but there are some others):

  • #366
  • #385 (seems to have someone who managed to get around what I think is the biggest problem, an older OpenSSL)
  • #511
  • #1300 (this one is notable because it specifically asks for building on an older system)
    • It's about GLIBCXX, though

cosmic-snow avatar Oct 08 '23 22:10 cosmic-snow

when I try to upgrade libc6 says 2.31 is the latest version

I wouldn't recommend trying to update glibc itself, it's pretty integral to the system. Better options:

  • upgrade your distro version to at least 22.04
  • run it in a VM with a newer distro
  • maybe try to run it in Docker with a newer base, if you can manage to get the GUI working somehow (I think it's possible, but haven't seen anyone try it)
  • build it yourself; you'll probably have to deal with an outdated OpenSSL version, too, however

cosmic-snow avatar Oct 08 '23 22:10 cosmic-snow

oh, now I have the same one,any news from last year?

pilotofbalance avatar Apr 28 '24 13:04 pilotofbalance

The requirements haven't changed I think, see my previous comments for ways to address it.

cosmic-snow avatar Apr 29 '24 23:04 cosmic-snow

run:

from gpt4all import GPT4All

log:

Traceback (most recent call last):
  File "/workspaces/aa/aa.py", line 1, in <module>
    from gpt4all import GPT4All
  File "/usr/local/python/3.10.13/lib/python3.10/site-packages/gpt4all/__init__.py", line 1, in <module>
    from .gpt4all import CancellationError as CancellationError, Embed4All as Embed4All, GPT4All as GPT4All
  File "/usr/local/python/3.10.13/lib/python3.10/site-packages/gpt4all/gpt4all.py", line 23, in <module>
    from ._pyllmodel import (CancellationError as CancellationError, EmbCancelCallbackType, EmbedResult as EmbedResult,
  File "/usr/local/python/3.10.13/lib/python3.10/site-packages/gpt4all/_pyllmodel.py", line 71, in <module>
    llmodel = load_llmodel_library()
  File "/usr/local/python/3.10.13/lib/python3.10/site-packages/gpt4all/_pyllmodel.py", line 61, in load_llmodel_library
    lib = ctypes.CDLL(str(MODEL_LIB_PATH / f"libllmodel.{ext}"))
  File "/usr/local/python/3.10.13/lib/python3.10/ctypes/__init__.py", line 374, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /usr/local/python/3.10.13/lib/python3.10/site-packages/gpt4all/llmodel_DO_NOT_MODIFY/build/libllmodel.so)

jianboy avatar Jul 07 '24 04:07 jianboy