似乎有3种方法告诉GCC弱连接符号:
__attribute__((weak_import))__attribute__((weak))#pragma weak symbol_name这些都不适合我:
#pragma weak asdf
extern void asdf(void) __attribute__((weak_import, weak));
...
{
if(asdf != NULL) asdf();
}
Run Code Online (Sandbox Code Playgroud)
我总是得到这样的链接错误:
Undefined symbols:
"_asdf", referenced from:
_asdf$non_lazy_ptr in ccFA05kN.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
我在OS X 10.5.5上使用GCC 4.0.1.我究竟做错了什么?