我正在使用以下程序(这是一个网站上的演示)来查看执行过程中经过的时间。
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <time.h>
#define BILLION 1000000000
int main( int argc, char **argv )
{
struct timespec start, stop;
double accum;
int val=clock_gettime(CLOCK_REALTIME,&start);
if( val==-1 ) {
perror( "clock gettime" );
exit( EXIT_FAILURE );
}
system( argv[1] );
if(clock_gettime(CLOCK_REALTIME,&stop); ) {
perror( "clock gettime" );
exit( EXIT_FAILURE );
}
printf( "%lf\n", accum );
return( EXIT_SUCCESS );
}
当我执行此代码时,我收到以下错误
time.c :(。text + 0x1d):对clock_gettime'
time.c:(.text+0x5f): undefined reference to
clock_gettime'的未定义引用
你能告诉我为什么会这样做以及会解决什么问题?
答案 0 :(得分:3)
您需要与实时库链接。试试gcc ... -lrt
。