RTLD_NODELETE and RTLD_NOLOAD are not defined for OpenBSD, although they are supported in its libc.
RTLD_NODELETE documented in dlopen man page since OpenBSD 7.0
RTLD_NOLOAD documented in dlopen man page since OpenBSD 7.2
From 7.9 headers:
$ grep RTLD /usr/include/dlfcn.h
#define RTLD_LAZY 1
#define RTLD_NOW 2
#define RTLD_GLOBAL 0x100
#define RTLD_LOCAL 0x000
#define RTLD_TRACE 0x200
#define RTLD_NODELETE 0x400
#define RTLD_NOLOAD 0x800
#define RTLD_NEXT ((void *) -1) /* Search subsequent objects. */
#define RTLD_DEFAULT ((void *) -2) /* Use default search algorithm. */
#define RTLD_SELF ((void *) -3) /* Search the caller itself. */
#define DL_LAZY RTLD_LAZY /* Compat */
RTLD_NODELETEandRTLD_NOLOADare not defined for OpenBSD, although they are supported in its libc.RTLD_NODELETEdocumented in dlopen man page since OpenBSD 7.0RTLD_NOLOADdocumented in dlopen man page since OpenBSD 7.2From 7.9 headers: