未定义的siglongjump引用

时间:2015-02-14 19:13:35

标签: c posix

我正在解决Linux / POSIX问题,我无法弄清楚我的标题/库等有什么问题。

这是我的代码:

#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
#include <setjmp.h>
jmp_buf buf;

void handler(int sig){ siglongjump(buf, 1); }
int main(){
    signal(SIGUSR1, handler);
    if(sigsetjmp(buf,1)==0)
        printf("A");
    if(fork() == 0){ // child process
        kill(getpid(), SIGUSR1); exit(0);}

我包括:<stdio.h><signal.h><stdlib.h><setjmp.h>;我也在使用-lc选项进行编译。

但是我得到了siglongjump的未定义引用。为什么呢?

1 个答案:

答案 0 :(得分:2)

函数名拼写错误。它不是siglongjump,而是siglongjmp:)