On 2016-07-05 14:42, Philip Guenther wrote:
On Mon, Jul 4, 2016 at 11:00 PM, Tinker <ti...@openmailbox.org> wrote:
...
That thread touched on a secondary question which is if there is any
particular requirement on HOW/WHEN to load libpthread :

A) Must libpthread be [dynamic object dependency] linked to the executable file directly, or is it OK that a shared library that the executable has a [dynamic object dependency] link to, links to libpthread [by the means of a
dynamic object dependency]?

That should have always worked, yes.


B) Can libpthread be loaded at first at dlopen() time in OpenBSD?

In -current, and therefore in 6.0 when it is released, yes, libpthread
can be loaded for the first time via dlopen().

In 5.9-stable and previous releases, libpthread can only be loaded at
executable startup and was marked as "noopen".

Thank you very much Philip.


Aha so in 5.9 and before, the executable itself, or any library in its tree of dynamic object dependencies, must have been compiled with "-lpthread", for libpthread to function. And in 6.0 and on just anywhere, i.e. also via dlopen(), works. Noted.


I guess it's not practically relevant but one last question, what did you mean by "noopen marking" in this context? (Can't find any documentation mentioning this. Just want to understand what you meant.)

Reply via email to