neu*_*cer 26 c linux cygwin undefined include
我正在尝试编译一个C程序,但我收到错误'RTLD_NEXT'未声明.我认为这应该在dlfcn.h中定义,c程序包含,但是当我查看dlfcn.h时,没有RTLD_NEXT.
我该如何解决?
bma*_*ies 31
这里的问题是posix标准RTLD_NEXT没有定义.所以GNU人不会启用它,除非你或.#define _GNU_SOURCE-D_GNU_SOURCE
RTLD_NEXT
#define _GNU_SOURCE
-D_GNU_SOURCE
POSIX的其他相关部分是dlfcn.h和dlsym.h.有趣的是,后来提到了RTLD_NEXT.显然,GNU人对于什么是扩展而什么不是扩展有点困惑.
小智 10
据man dlsym它#define _GNU_SOURCE(只是一个前导下划线)之前将dlfcn.h被包括在内.(RHEL6.1).
man dlsym
dlfcn.h
use*_*104 4
尝试#define __GNU_SOURCE作为源代码的第一行。
#define __GNU_SOURCE
归档时间:
16 年,2 月 前
查看次数:
18463 次
最近记录:
8 年,1 月 前