(Some?) ports using cmake that have both a library and a binary in the
same build, built using ld.lld as linker, look like this:
$ objdump -p /usr/local/bin/zint|grep NEEDED
NEEDED libzint.so
NEEDED libpng.so.17.5
NEEDED libz.so.5.0
NEEDED libm.so.10.1
NEEDED libc.so.93.0
i.e. missing the version number.
When built using ld.bfd it's like this:
$ objdump -p /usr/obj/ports/zint-2.6.3.src/fake-amd64/usr/local/bin/zint | grep NEEDED
NEEDED libzint.so.1.0
NEEDED libpng.so.17.5
NEEDED libz.so.5.0
NEEDED libm.so.10.1
NEEDED libc.so.93.0
First noticed with wireshark, but graphics/zint is a quicker build and
shows it easily too (lib and executable in different subpackages makes
it very easy to spot with "make port-lib-depends-check").
Anyone have a clue what's going on?
I've confirmed that compiler command lines are the same by setting
"USE_NINJA=samurai" to avoid doing random build order and diffing build
logs between the two, the only difference is because ld.lld doesn't show
apiwarn messages.
No comments:
Post a Comment