1

在编译 C++ 项目时,

我收到了一个错误:

/usr/lib/gcc/i686-linux-gnu/4.7/../../../i386-linux-gnu/crt1.o: In function `_start':
(.text+0xc): undefined reference to `__libc_csu_fini'
/usr/lib/gcc/i686-linux-gnu/4.7/../../../i386-linux-gnu/crt1.o: In function `_start':
(.text+0x11): undefined reference to `__libc_csu_init'

....: undefined reference to `atexit'
collect2: error: ld returned 1 exit status

这是代码:

std::atexit(myExitFunction);

myExitFunction 已被很好地声明。为什么会抱怨atexit?

4

1 回答 1

0

这是一个链接错误消息。编译器成功找到 的声明std::atexit()但链接器找不到此函数的任何已编译定义

尝试通过将此参数添加到链接器来链接您的代码:

-stdlib=libc++
于 2012-11-28T11:07:29.213 回答