-lrt 无法解决未定义引用 clock_gettime

-lrt 无法解决未定义引用 clock_gettime

我正在尝试编译该程序的源代码这里。根据他的指示,我使用命令进行编译g++ -O3 -lrt netmon.cpp -o netmon。我得到了这个输出:

netmon.cpp:(.text.startup+0xb3): undefined reference to `clock_gettime'
collect2: ld returned 1 exit status

这很奇怪,因为我rt库提供了这个函数,这是怎么回事?

答案1

gcc并且g++可以对链接参数的顺序很挑剔。通常,您应该-l在本地对象之后指定库参数 ()。请尝试以下方法:

g++ -O3 netmon.c -o netmon -lrt

答案2

我最终改用了gcc它并且有效:

gcc -o netmon netmon.cpp -lrt

答案3

添加 -lrt源文件,例如:

g++ -O3 -o netmon netmon.cpp -lrt

这里是关于同一问题的另一场讨论。

相关内容