Hello,
Let me know if this is not the right forum section for such a questions.
Recently I found something interesting which continues to bothers me.
The problem is that when I build e2fsprogs
with CONFIG_USE_MKLIBS=y
(Strip unnecessary functions from libraries) the libext2fs.so.2
is one of the libraries in tmp/mklibs-out
and apart of been striped, its path to libc.so
has been modified and points to the STAGING_DIR_ROOT
.
So, when I try to use mkfs.ext4
(for example) it complain with
Error loading shared library /home/vlado/projects/openwrt/staging_dir/target-aarch64_cortex-a53_musl/root-mediatek/lib/libc.so: No such file or directory (needed by /usr/lib/libext2fs.so.2)
When I check the package (libext2fs2_1.47.0-2_aarch64_cortex-a53.ipk
) or the files in staging_dir
the library has this:
@libc.so^@libext2fs.so.2^@GLIBC_2.0^@
But after it been stripped it has:
^@/home/vlado/projects/openwrt/staging_dir/target-aarch64_cortex-a53_musl/root-mediatek/lib/libc.so^@libext2fs.so.2^@
Am I doing something wrong? Is this behavior expected?
How can i fix it?
(of course, the obvious fix is to disable the CONFIG_USE_MKLIBS
) .
Let me know if I have to provide further details, or if I missed to tell something important here.
P.S.: this is with openwrt-23.05
branch but I actually found it (need it) for a much older branch and tried to reproduce it with a recent version. (my hope was that this would be fine in 23.05, obviously it is not).
Best wishes,
Atanas