[Android-tools-devel] Bug#1111007: android-libandroidfw: There is an undefined symbol in libandroidfw.so: ExtractEntryToFile(ZipArchive*, ZipEntry*, int).
Robert Heller
heller at deepsoft.com
Wed Aug 13 14:04:05 BST 2025
Package: android-libandroidfw
Version: 1:10.0.0+r36-10
Severity: normal
Tags: ftbfs
Dear Maintainer,
* What led up to the situation?
I am trying to build a package for the Android system.
* What exactly did you do (or not do) that was effective (or
ineffective)?
/usr/bin/aapt2 -v
* What was the outcome of this action?
/usr/bin/aapt2: symbol lookup error: /usr/lib/aarch64-linux-gnu/android/libandroidfw.so.0: undefined symbol: _Z18ExtractEntryToFileP10ZipArchiveP8ZipEntryi
* What outcome did you expect instead?
Get the version number of aapt2
I did some additional exploration:
marchhare% nm -D --demangle -A /usr/lib/aarch64-linux-gnu/android/lib* | grep ExtractEntryToFile
/usr/lib/aarch64-linux-gnu/android/libandroidfw.so.0: U ExtractEntryToFile(ZipArchive*, ZipEntry*, int)
/usr/lib/aarch64-linux-gnu/android/libziparchive.so:000000000001c508 T ExtractEntryToFile(ZipArchive*, ZipEntry64 const*, int)
/usr/lib/aarch64-linux-gnu/android/libziparchive.so:000000000001c470 T ExtractEntryToFile(ZipArchive*, ZipEntry const*, int)
/usr/lib/aarch64-linux-gnu/android/libziparchive.so.0:000000000001c508 T ExtractEntryToFile(ZipArchive*, ZipEntry64 const*, int)
/usr/lib/aarch64-linux-gnu/android/libziparchive.so.0:000000000001c470 T ExtractEntryToFile(ZipArchive*, ZipEntry const*, int)
I also used apt-get to download the sources and attempted to rebuild the
package from source, but encounted errors there:
marchhare% dpkg-buildpackage
dpkg-buildpackage: info: source package android-platform-frameworks-base
dpkg-buildpackage: info: source version 1:10.0.0+r36-10
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Roger Shimizu <rosh at debian.org>
dpkg-source --before-build .
dpkg-buildpackage: info: host architecture arm64
debian/rules clean
dh clean --with bash-completion
dh_clean
dpkg-source -b .
dpkg-source: info: using source format '3.0 (quilt)'
dpkg-source: info: building android-platform-frameworks-base using existing ./android-platform-frameworks-base_10.0.0+r36.orig.tar.xz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: warning: ignoring deletion of file media/native/midi/include/Doxyfile.orig, use --include-removal to override
dpkg-source: info: building android-platform-frameworks-base in android-platform-frameworks-base_10.0.0+r36-10.debian.tar.xz
dpkg-source: info: building android-platform-frameworks-base in android-platform-frameworks-base_10.0.0+r36-10.dsc
debian/rules binary
dh binary --with bash-completion
dh_update_autotools_config
dh_autoreconf
debian/rules override_dh_auto_configure
make[1]: Entering directory '/home/heller/android-platform-frameworks-base-10.0.0+r36'
mkdir -p debian/out
dh_auto_configure
make[1]: Leaving directory '/home/heller/android-platform-frameworks-base-10.0.0+r36'
debian/rules override_dh_auto_build-arch
make[1]: Entering directory '/home/heller/android-platform-frameworks-base-10.0.0+r36'
dh_auto_build --buildsystem=makefile -- -f debian/libandroidfw.mk
make -j4 -f debian/libandroidfw.mk
make[2]: Entering directory '/home/heller/android-platform-frameworks-base-10.0.0+r36'
mkdir --parents debian/out
clang++ libs/androidfw/ApkAssets.cpp libs/androidfw/Asset.cpp libs/androidfw/AssetDir.cpp libs/androidfw/AssetManager.cpp libs/androidfw/AssetManager2.cpp libs/androidfw/AttributeResolution.cpp libs/androidfw/ChunkIterator.cpp libs/androidfw/ConfigDescription.cpp libs/androidfw/Idmap.cpp libs/androidfw/LoadedArsc.cpp libs/androidfw/Locale.cpp libs/androidfw/LocaleData.cpp libs/androidfw/misc.cpp libs/androidfw/ObbFile.cpp libs/androidfw/PosixUtils.cpp libs/androidfw/ResourceTypes.cpp libs/androidfw/ResourceUtils.cpp libs/androidfw/StreamingZipInflater.cpp libs/androidfw/TypeWrappers.cpp libs/androidfw/Util.cpp libs/androidfw/ZipFileRO.cpp libs/androidfw/ZipUtils.cpp -o debian/out/libandroidfw.so.0 -g -O2 -ffile-prefix-map=/home/heller/android-platform-frameworks-base-10.0.0+r36=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fPIC -DSTATIC_ANDROIDFW_FOR_TOOLS -std=gnu++17 -Wdate-time -D_FORTIFY_SOURCE=2 -DNDEBUG -UDEBUG -I/usr/include/android -Wno-c99-designator -Wno-gnu-designator -Wno-gnu-folding-constant -fmessage-length=0 -fno-exceptions -fno-strict-aliasing -no-canonical-prefixes -Ilibs/androidfw/include -I/usr/include/android -Wl,-z,relro -Wl,-z,now -fPIC -shared -Wl,-soname,libandroidfw.so.0 -Wl,-rpath=/usr/lib/aarch64-linux-gnu/android -lz -L/usr/lib/aarch64-linux-gnu/android -lziparchive -lutils -llog -lbase
libs/androidfw/ZipUtils.cpp:128:16: error: variable type 'FileReader' is an abstract class
FileReader reader(fp);
^
/usr/include/android/ziparchive/zip_archive.h:337:16: note: unimplemented pure virtual method 'ReadAtOffset' in 'FileReader'
virtual bool ReadAtOffset(uint8_t* buf, size_t len, off64_t offset) const = 0;
^
libs/androidfw/ZipUtils.cpp:136:14: error: variable type 'FdReader' is an abstract class
FdReader reader(fd);
^
/usr/include/android/ziparchive/zip_archive.h:337:16: note: unimplemented pure virtual method 'ReadAtOffset' in 'FdReader'
virtual bool ReadAtOffset(uint8_t* buf, size_t len, off64_t offset) const = 0;
^
libs/androidfw/ZipUtils.cpp:144:18: error: variable type 'BufferReader' is an abstract class
BufferReader reader(in, compressedLen);
^
/usr/include/android/ziparchive/zip_archive.h:337:16: note: unimplemented pure virtual method 'ReadAtOffset' in 'BufferReader'
virtual bool ReadAtOffset(uint8_t* buf, size_t len, off64_t offset) const = 0;
^
3 errors generated.
make[2]: *** [debian/libandroidfw.mk:39: build] Error 1
make[2]: Leaving directory '/home/heller/android-platform-frameworks-base-10.0.0+r36'
dh_auto_build: error: make -j4 -f debian/libandroidfw.mk returned exit code 2
make[1]: *** [debian/rules:38: debian/out/libandroidfw.so] Error 25
make[1]: Leaving directory '/home/heller/android-platform-frameworks-base-10.0.0+r36'
make: *** [debian/rules:44: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
-- System Information:
Debian Release: 12.11
APT prefers oldstable-updates
APT policy: (500, 'oldstable-updates'), (500, 'oldstable-security'), (500, 'oldstable')
Architecture: arm64 (aarch64)
Foreign Architectures: armhf
Kernel: Linux 6.12.25+rpt-rpi-2712 (SMP w/4 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8), LANGUAGE=en_US.UTF-8
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages android-libandroidfw depends on:
ii android-libbase 1:33.0.3-2~bpo12+1~rpt1
ii android-liblog 1:33.0.3-2~bpo12+1~rpt1
ii android-libutils 1:33.0.3-2~bpo12+1~rpt1
ii android-libziparchive 1:33.0.3-2~bpo12+1~rpt1
ii libc6 2.36-9+rpt2+deb12u12
ii libgcc-s1 12.2.0-14+deb12u1
ii libstdc++6 12.2.0-14+deb12u1
ii zlib1g 1:1.2.13.dfsg-1+rpt1
android-libandroidfw recommends no packages.
android-libandroidfw suggests no packages.
-- no debconf information
More information about the Android-tools-devel
mailing list