Try build a dynamic library, a lot function symbol and global symbol need to be deferred binding from runtime app.

It can be done by pass `-Wl,-undefined,dynamic_lookup` or `--unresolved-symbols=dynamic_lookup` to linker.


I am look a way to do it from d code, like `pragma(linkerDirective, "--unresolved-symbols=dynamic_lookup")`, this can be more flexable when I import one module, I get that module linker options. (there is a lot module they have diff symbol options, I need to combine them arbitrarily)


linux work since they allow undefined symbol when link dynamic library.

for macOS, with `pragma(linkerDirective, "--unresolved-symbols=dynamic_lookup");`, I get error:

```sh
lld: error: --unresolved-symbols=dynamic_lookup is not allowed in LC_LINKER_OPTION
```


I need to use llvm `lld -flavor ld64`.

Reply via email to