qualcomm/eld

We should report warning if different shared libraries have the same SO name

Aperta

#51 aperta il 21 apr 2025

 (4 commenti) (1 reazione) (1 assegnatario)C++ (73 fork)auto 404
diagnosticsgood first issue

Metriche repository

Star
 (254 stelle)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

It would be nice if linker reports a warning if different shared libraries present in the link have the same SO name.

For example, we should report warning for the below example where lib1.so and lib2.so have the same SO name.

#!/usr/bin/env bash

cat >1.c <<\EOF
int foo() { return 1; }
EOF

cat >2.c <<\EOF
int bar() { return 3; }
EOF

clang -o 1.o 1.c -target arm -c -ffunction-sections
clang -o 2.o 2.c -target arm -c -ffunction-sections
ld.eld -o lib1.so 1.o -shared -soname=foo
ld.eld -o lib2.so 2.o -shared -soname=foo
ld.eld -o a.out /dev/null lib1.so lib2.so

Guida contributor