我正在尝试编译C程序,但未得到错误“RTLD_NEXT”。我认为这应该在dlfcn.h(包含c程序)中定义,但是当我查看dlfcn.h时,没有RTLD_NEXT。
我该如何解决?
最佳答案
这里的问题是posix standard没有定义RTLD_NEXT
。因此,除非您使用#define _GNU_SOURCE
或-D_GNU_SOURCE
,否则GNU人员不会启用它。
POSIX的其他相关部分是dlfcn.h和dlsym.h。有趣的是,后面提到了RTLD_NEXT
。显然,GNU人员对什么是扩展而不是扩展感到有些困惑。