Thread overview
[Issue 20587] _rt_loadLibrary symbol not found
Feb 19, 2020
Adam D. Ruppe
Feb 19, 2020
Jonathan Arnold
Feb 19, 2020
Adam D. Ruppe
Feb 20, 2020
Mathias LANG
Feb 20, 2020
Jonathan Arnold
Feb 20, 2020
Jonathan Arnold
Feb 20, 2020
kinke
Feb 20, 2020
kinke
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

Adam D. Ruppe <destructionator@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |destructionator@gmail.com

--- Comment #1 from Adam D. Ruppe <destructionator@gmail.com> ---
Does it work if you do `dmd -defaultlib=libphobos2.so` ?

--
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

--- Comment #2 from Jonathan Arnold <jarnold@visionable.com> ---
Thanks for the comment but no, doesn't help :(

--
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

--- Comment #3 from Adam D. Ruppe <destructionator@gmail.com> ---
OK, I know that helps on Linux but not mac I guess :(

will have to wait till someone else gets on.

--
February 20, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

Mathias LANG <pro.mathias.lang@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pro.mathias.lang@gmail.com

--- Comment #4 from Mathias LANG <pro.mathias.lang@gmail.com> ---
Introduced by https://github.com/dlang/druntime/pull/593 The symbol is available on Linux but not OSX.

We can (should) make it available on OSX, because linker errors are not user
friendly.
But even if we make it available on OSX, it is not implemented, so you'll have
better luck calling `dlopen` / `dlsym` directly.

--
February 20, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

--- Comment #5 from Jonathan Arnold <jarnold@visionable.com> ---
Actually, it works on Windows as well. And while linker errors are not, as you say, user friendly, even worse, I think, is to add it but not implement it. Is the fact it only works on Windows (and Linux I guess) documented anywhere?

--
February 20, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

--- Comment #6 from Jonathan Arnold <jarnold@visionable.com> ---
I was having the same error with ldc2 and adding '-link-defaultlib-shared' fixed it:

ldc2 -link-defaultlib-shared tf.d

Is there something similar to that flag for dmd, or is that only for ldc2?

https://github.com/ldc-developers/ldc/issues/3331

--
February 20, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

kinke <kinke@gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |kinke@gmx.net
         Resolution|---                         |DUPLICATE

--- Comment #7 from kinke <kinke@gmx.net> ---
This is a duplicate of https://issues.dlang.org/show_bug.cgi?id=16391.

*** This issue has been marked as a duplicate of issue 16391 ***

--
February 20, 2020
https://issues.dlang.org/show_bug.cgi?id=20587

--- Comment #8 from kinke <kinke@gmx.net> ---
It works for LDC, with shared druntime only (i.e., not with static druntime), because it has proper shared druntime support on Mac too, unlike DMD. It's using a generalized `rt.sections_elf_shared` in druntime for Mac targets. So https://github.com/dlang/druntime/pull/2322 would fix this, but needs compiler support from DMD.

--