1 # This file lists libraries that we will assume to be present on the host system and hence
2 # should NOT be bundled inside AppImages. This is a working document; expect it to change
3 # over time. File format: one filename per line. Each entry should have a justification comment.
5 # See the useful tool at https://abi-laboratory.pro/index.php?view=navigator&symbol=hb_buffer_set_cluster_level#result
6 # to investigate issues with missing symbols.
13 # libcrypt.so.1 # Not part of glibc anymore as of Fedora 30. See https://github.com/slic3r/Slic3r/issues/4798 and https://pagure.io/fedora-docs/release-notes/c/01d74b33564faa42959c035e1eee286940e9170e?branch=f28
18 # libnsl.so.1 # Not part of glibc anymore as of Fedora 28. See https://github.com/RPCS3/rpcs3/issues/5224#issuecomment-434930594
31 # These files are all part of the GNU C Library which should never be bundled.
32 # List was generated from a fresh build of glibc 2.25.
36 # usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.21' not found
39 # The above may be missing on Chrome OS, https://www.reddit.com/r/Crostini/comments/d1lp67/ultimaker_cura_no_longer_running_as_an_appimage/
41 # Part of the video driver (OpenGL); present on any regular
42 # desktop system, may also be provided by proprietary drivers.
43 # Known to cause issues if it's bundled.
47 # reported to be superfluent and conflicting system libraries (graphics driver)
48 # see https://github.com/linuxdeploy/linuxdeploy/issues/89
52 # Antergos Linux release 2015.11 (ISO-Rolling)
53 # /usr/lib/libdrm_amdgpu.so.1: error: symbol lookup error: undefined symbol: drmGetNodeTypeFromFd (fatal)
54 # libGL error: unable to load driver: swrast_dri.so
55 # libGL error: failed to load driver: swrast
56 # Unrecognized OpenGL version
60 # known to cause problems with graphics, see https://github.com/RPCS3/rpcs3/issues/4427#issuecomment-381674910
64 # https://github.com/probonopd/linuxdeployqt/issues/390#issuecomment-529036305
69 # symbol lookup error: /lib64/libxcb-dri3.so.0: undefined symbol: xcb_send_fd
70 # Uncertain if this is required to be bundled for some distributions - if so we need to write a version check script and use LD_PRELOAD to load the system version if it is newer
72 # undefined symbol: xcb_send_request_with_fds
73 # https://github.com/AppImage/AppImages/issues/128
78 # symbol lookup error: ./lib/libX11.so.6: undefined symbol: xcb_wait_for_reply64
79 # Uncertain if this is required to be bundled for some distributions - if so we need to write a version check script and use LD_PRELOAD to load the system version if it is newer
83 # On Ubuntu, "symbol lookup error: /usr/lib/x86_64-linux-gnu/gtk-2.0/modules/liboverlay-scrollbar.so: undefined symbol: g_settings_new"
85 # libgdk-x11-2.0.so.0 # Missing on openSUSE-Tumbleweed-KDE-Live-x86_64-Snapshot20170601-Media.iso
86 # libgtk-x11-2.0.so.0 # Missing on openSUSE-Tumbleweed-KDE-Live-x86_64-Snapshot20170601-Media.iso
90 # No sound, e.g., in VLC.AppImage (does not find sound cards)
92 libgdk_pixbuf-2.0.so.0
94 # On Ubuntu, get (inkscape:25621): GdkPixbuf-WARNING **: Error loading XPM image loader: Image type 'xpm' is not supported
98 # Application stalls when loading fonts during application launch; e.g., KiCad on ubuntu-mate
102 # audacity: /tmp/.mount_AudaciUsFbON/usr/lib/libthai.so.0: version `LIBTHAI_0.1.25' not found (required by /usr/lib64/libpango-1.0.so.0)
103 # on openSUSE Tumbleweed
105 # other "low-level" font rendering libraries
106 # should fix https://github.com/probonopd/linuxdeployqt/issues/261#issuecomment-377522251
107 # and https://github.com/probonopd/linuxdeployqt/issues/157#issuecomment-320755694
111 # Note, after discussion we do not exlude this, but we can use a dummy library that just does nothing
114 # sed: error while loading shared libraries: libpcre.so.3: cannot open shared object file: No such file or directory
115 # Some distributions, such as Arch Linux, do not come with libselinux.so.1 by default.
116 # The solution is to bundle a dummy mock library:
117 # echo "extern int is_selinux_enabled(void){return 0;}" >> selinux-mock.c
118 # gcc -s -shared -o libselinux.so.1 -Wl,-soname,libselinux.so.1 selinux-mock.c
119 # strip libselinux.so.1
120 # More information: https://github.com/AppImage/AppImages/issues/83
122 # The following are assumed to be part of the base system
123 # Removing these has worked e.g., for Krita. Feel free to report if
124 # you think that some of these should go into AppImages and why.
130 # libgssapi_krb5.so.2 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there
131 # libgssapi.so.3 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
132 # libhcrypto.so.4 # Missing on openSUSE LEAP 42.0
133 # libheimbase.so.1 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
134 # libheimntlm.so.0 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
135 # libhx509.so.5 # Missing on openSUSE LEAP 42.0
137 # libidn.so.11 # Does not come with Solus by default
138 # libk5crypto.so.3 # Runnning AppImage built on Debian 9 or Ubuntu 16.04 on an Archlinux fails otherwise; https://github.com/AppImage/AppImages/issues/301
139 # libkeyutils.so.1 # Does not come with Void Linux by default; https://github.com/Subsurface-divelog/subsurface/issues/1971#issuecomment-466606834
140 # libkrb5.so.26 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there. Missing on openSUSE LEAP 42.0
141 # libkrb5.so.3 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there
142 # libkrb5support.so.0 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there
144 # libpcre.so.3 # Missing on Fedora 24, SLED 12 SP1, and openSUSE Leap 42.2
145 # libroken.so.18 # Mission on openSUSE LEAP 42.0
146 # libsasl2.so.2 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
150 # libwind.so.0 # Missing on openSUSE LEAP 42.0
153 # Potentially dangerous libraries
157 # Rectangles instead of fonts
158 # https://github.com/AppImage/AppImages/issues/240
160 libpangocairo-1.0.so.0
164 # Can get symbol lookup error: /lib64/libpango-1.0.so.0: undefined symbol: g_log_structured_standard
165 # if libcairo is bundled but libpango is not
169 # relocation error: /lib/x86_64-linux-gnu/libgcrypt.so.20:
170 # symbol gpgrt_lock_lock, version GPG_ERROR_1.0 not defined
171 # in file libgpg-error.so.0 with link time reference
175 # it must match the ABI of the JACK server which is installed in the base system
176 # rncbc confirmed this
179 # https://github.com/probonopd/linuxdeployqt/issues/35
180 # Error initializing NSS with a persistent database (sql:/home/me/.pki/nssdb): libsoftokn3.so: cannot open shared object file: No such file or directory
181 # Error initializing NSS without a persistent database: NSS error code: -5925
182 # nss_error=-5925, os_error=0
183 # libnss3.so should not be removed from the bundles, as this causes other issues, e.g.,
184 # https://github.com/probonopd/linuxdeployqt/issues/35#issuecomment-256213517
185 # and https://github.com/AppImage/AppImages/pull/114
188 # The following cannot be excluded, see
189 # https://github.com/AppImage/AppImages/commit/6c7473d8cdaaa2572248dcc53d7f617a577ade6b
190 # http://stackoverflow.com/questions/32644157/forcing-a-binary-to-use-a-specific-newer-version-of-a-shared-library-so
196 # According to https://github.com/RicardoEPRodrigues/3Engine/issues/4#issuecomment-511598362
197 # libGLEW is not tied to a specific GPU. It's linked against libGL.so.1
198 # and that one is different depending on the installed driver.
199 # In fact libGLEW is changing its soversion very often, so you should always bundle libGLEW.so.2.0
201 # libglut.so.3 # to be confirmed
203 libxcb-dri3.so.0 # https://github.com/AppImage/AppImages/issues/348
204 libxcb-dri2.so.0 # https://github.com/probonopd/linuxdeployqt/issues/331#issuecomment-442276277
206 # If the next line turns out to cause issues, we will have to remove it again and find another solution
207 libfribidi.so.0 # https://github.com/olive-editor/olive/issues/221 and https://github.com/knapsu/plex-media-player-appimage/issues/14