Consider this code: =========== import core.sys.posix.dlfcn; extern(C) void fun() {} void main() { fun(); void *hndl = dlopen(null, RTLD_LAZY); if (!hndl) assert(0); auto p = dlsym(hndl, "fun".ptr); if (!p) { import core.stdc.stdio; printf("%s\n", dlerror()); } } ===========
It works (i.e. outputs nothing) on http://dpaste.dzfl.pl and on Vladimir's machine.
On my Mint and Ubuntu machines it outputs: ./test: undefined symbol: fun I'm building with no flags using dmd. What could be the problem here? Thanks, Adnrei