-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Description
Problem description
The libandroid-glob package version 0.7 contains a corrupted library file. The file /data/data/com.termux/files/usr/lib/libandroid-glob.so is only 1 byte instead of being a proper ELF library or symlink.
This causes link errors for any package that depends on libandroid-glob.so, including ffmpeg7, imagemagick, and potentially others.
Error message
CANNOT LINK EXECUTABLE "/data/data/com.termux/files/usr/bin/ffmpeg": "/data/data/com.termux/files/usr/lib/libandroid-glob.so" is too small to be an ELF executable: only found 1 bytes
What steps will reproduce the bug?
- Update packages to get libandroid-glob 0.7 (built on 2025-11-10)
- Install ffmpeg7:
pkg install ffmpeg7 - Try to run ffmpeg:
ffmpeg -version - Observe the link error
Investigation
Checking the package contents shows the file is corrupted:
$ ls -lh /data/data/com.termux/files/usr/lib/libandroid-glob.so
-rw-------. 1 u0_a429 u0_a429 1 Nov 10 00:04 /data/data/com.termux/files/usr/lib/libandroid-glob.so
$ file /data/data/com.termux/files/usr/lib/libandroid-glob.so
/data/data/com.termux/files/usr/lib/libandroid-glob.so: very short file (no magic)
$ apt-get download libandroid-glob && dpkg-deb -c libandroid-glob_0.7_aarch64.deb | grep libandroid-glob.so
-rw------- 0/0 1 2025-11-10 00:04 ./data/data/com.termux/files/usr/lib/libandroid-glob.soThe package itself contains the corrupted 1-byte file.
Workaround
According to the package description, libandroid-glob should be a "Symlink to libc for compatibility". Creating this symlink manually fixes the issue:
rm /data/data/com.termux/files/usr/lib/libandroid-glob.so
ln -s /data/data/com.termux/files/usr/lib/libc++_shared.so /data/data/com.termux/files/usr/lib/libandroid-glob.soAfter this workaround, ffmpeg and other affected packages work correctly.
What is the expected behavior?
The libandroid-glob.so file should be a proper symlink to a libc library, not a corrupted 1-byte file.
System information
Termux version: 0.118.1
Android version: 14
Device: Samsung Galaxy S24 Ultra (SM-S918B)
Kernel: Linux 5.15.178-android13-8-31998796-abS918BXXS8EYJ3
Architecture: aarch64
Package information:
libandroid-glob/stable,now 0.7 aarch64 [installed]
ffmpeg7/tur-packages,now 7.1.2 aarch64 [installed]
Related Issues
This might be related to #27185 which reports a similar issue with libandroid-posix-semaphore.so, also from packages built on 2025-11-10.
Suggested Fix
The package build script for libandroid-glob needs to be fixed to properly create the symlink instead of creating a 1-byte file. This likely happened during the build process on 2025-11-10.