When linking DSO lld doesn't resolve symbols from input DSOs in case those symbols are lazy. Below is an example:
input.so - has undefined symbol 'print'
libprint.a - defines 'print'
ld.lld -shared -o output.so input.so libprint.a
Even though libprint.a has definition of 'print', output.so will have it undefined.
Later when you link application with output.so, you'll also have to provide libprint.a
This patch fixes it.
You want to set true to ExportDynamic.