这是indexloc提供的服务,不要输入任何密码
Skip to content

[Bug]: missing versioned dependency from gpgme to libassuan #24015

@kenhys

Description

@kenhys

Problem description

There is no explicitly versioned dependency from gpgme to libassuan.

TERMUX_PKG_DEPENDS="gnupg (>= 2.2.9-1), libassuan, libgpg-error"

TERMUX_PKG_DEPENDS="gnupg (>= 2.2.9-1), libassuan, libgpg-error"

Thus, if libassuan 2.5.7 was installed, it means that the above dependency will be met.
In such a situation, if your termux application links with gpgme, it raises the following error:

cannot locate symbol "assuan_new_ext" referenced by "/data/data/com.termux/files/usr/lib/libgpgme.so"...

libassuan 2.5.7 provides the following symbols.

000000000000810c T assuan_new_ext@@LIBASSUAN_1.0

On the other hand, gpgme 1.24.2 requires the following versioned libassuan symbols.

U assuan_new_ext@LIBASSUAN_2.0

This incompatibility raises the runtime error.

What steps will reproduce the bug?

  • Build termux application which links with gpgme 1.24.2.
  • Deploy termux application (libassuan 2.5.7 must be installed, not upgrade to 3.0.2)
  • Launch termux application

What is the expected behavior?

Upgrade to libassuan 3.0.1-2 will solve the issue, but an appropriate version of libassuan will be installable by default.

Set versioned dependency to libassuan.

TERMUX_PKG_DEPENDS="gnupg (>= 2.2.9-1), libassuan (>= 3.0.1-1), libgpg-error"

System information

Termux Variables:
TERMUX_APK_RELEASE=GITHUB
TERMUX_APP_PACKAGE_MANAGER=apt
TERMUX_APP_PID=3848
TERMUX_IS_DEBUGGABLE_BUILD=1
TERMUX_MAIN_PACKAGE_FORMAT=debian
TERMUX_VERSION=0.118.1
TERMUX__USER_ID=0
Packages CPU architecture:
aarch64
Subscribed repositories:
# sources.list
deb https://packages-cf.termux.dev/apt/termux-main/ stable main
# root-repo (sources.list.d/root.list)
deb https://packages-cf.termux.dev/apt/termux-root/ root stable
Updatable packages:
apt/stable 2.8.1-1 aarch64 [upgradable from: 2.7.14]
bash/stable 5.2.37-2 aarch64 [upgradable from: 5.2.26-1]
ca-certificates/stable 1:2025.02.25 all [upgradable from: 1:2024.03.11-2]
command-not-found/stable 2.4.0-68 aarch64 [upgradable from: 2.4.0-29]
coreutils/stable 9.6-1 aarch64 [upgradable from: 9.5]
curl/stable 8.12.1 aarch64 [upgradable from: 8.8.0]
debianutils/stable 5.21 aarch64 [upgradable from: 5.19]
diffutils/stable 3.11 aarch64 [upgradable from: 3.10]
dpkg/stable 1.22.6-1 aarch64 [upgradable from: 1.22.6]
ed/stable 1.21.1 aarch64 [upgradable from: 1.20.2]
findutils/stable 4.10.0 aarch64 [upgradable from: 4.9.0-2]
gpgv/stable 2.4.5-3 aarch64 [upgradable from: 2.4.5-1]
inetutils/stable 2.6 aarch64 [upgradable from: 2.4-1]
less/stable 668 aarch64 [upgradable from: 633-1]
libandroid-support/stable 29 aarch64 [upgradable from: 28-3]
libassuan/stable 3.0.1-2 aarch64 [upgradable from: 2.5.7]
libc++/stable 27c aarch64 [upgradable from: 26b]
libcurl/stable 8.12.1 aarch64 [upgradable from: 8.8.0]
libgcrypt/stable 1.11.0 aarch64 [upgradable from: 1.10.3]
libgmp/stable 6.3.0-1 aarch64 [upgradable from: 6.3.0]
libgnutls/stable 3.8.9 aarch64 [upgradable from: 3.8.5]
libgpg-error/stable 1.50 aarch64 [upgradable from: 1.49]
libiconv/stable 1.18 aarch64 [upgradable from: 1.17]
liblz4/stable 1.10.0 aarch64 [upgradable from: 1.9.4]
liblzma/stable 5.8.0 aarch64 [upgradable from: 5.6.2]
libnettle/stable 3.10.1 aarch64 [upgradable from: 3.9.1]
libnghttp2/stable 1.65.0 aarch64 [upgradable from: 1.62.1]
libnghttp3/stable 1.8.0 aarch64 [upgradable from: 1.3.0]
libsmartcols/stable 2.40.2-3 aarch64 [upgradable from: 2.39.3-4]
libssh2/stable 1.11.1 aarch64 [upgradable from: 1.11.0]
libtirpc/stable 1.3.6 aarch64 [upgradable from: 1.3.4-1]
libunbound/stable 1.22.0 aarch64 [upgradable from: 1.20.0]
libunistring/stable 1.3 aarch64 [upgradable from: 1.1]
lsof/stable 4.99.4 aarch64 [upgradable from: 4.99.3]
nano/stable 8.3 aarch64 [upgradable from: 8.0]
ncurses/stable 6.5.20240831-2 aarch64 [upgradable from: 6.4.20231001-4]
openssl/stable 1:3.4.1 aarch64 [upgradable from: 1:3.2.1-1]
patch/stable 2.7.6-4 aarch64 [upgradable from: 2.7.6-3]
pcre2/stable 10.45 aarch64 [upgradable from: 10.44]
readline/stable 8.2.13 aarch64 [upgradable from: 8.2.10]
termux-am/stable 0.8.0-1 all [upgradable from: 0.8.0]
termux-exec/stable 1:2.3.0 aarch64 [upgradable from: 1:1.0]
termux-keyring/stable 3.12-1 all [upgradable from: 3.12]
termux-licenses/stable 2.1 all [upgradable from: 2.0-3]
termux-tools/stable 1.45.0 all [upgradable from: 1.42.4]
util-linux/stable 2.40.2-3 aarch64 [upgradable from: 2.39.3-4]
xxhash/stable 0.8.3 aarch64 [upgradable from: 0.8.2]
xz-utils/stable 5.8.0 aarch64 [upgradable from: 5.6.2]
zstd/stable 1.5.7 aarch64 [upgradable from: 1.5.6]
termux-tools version:
1.42.4
Android version:
14
Kernel build information:
Linux localhost 6.1.114-gd5f3b2caf4c3-v8 #1 SMP PREEMPT Tue Mar  4 00:32:17 UTC 2025 aarch64 Android
Device manufacturer:
Raspberry
Device model:
Raspberry Pi 5
LD Variables:
LD_LIBRARY_PATH=
LD_PRELOAD=/data/data/com.termux/files/usr/lib/libtermux-exec.so

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug reportSomething is not working properlynot-bugIssue is not a bug or has been resolved

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions