为了测量程序某些部分的时间,我想使用OpenMP中的omp_get_wtime()函数。我只能以32位(使用-m32 gcc选项)编译该项目。我得到那些错误:

libgomp.a(time.o): In function 'gomp_ialias_omp_get_wtick':
  undefined reference to 'clock_getres'
libgomp.a(time.o): In function 'gomp_ialias_omp_get_wtime':
  undefined reference to 'clock_gettime'

虽然在以64位进行编译时没有任何错误(我做了一个简单的测试)。

我使用-fopenmp链接openmp。我尝试添加-gomp,但没有任何改变。

我正在2012 Cent OS版本(64位)下运行,并使用gcc 4.4.7进行编译。
更有趣的是,我无法使用apt进行升级或安装任何程序,但可以从源代码中编译一些缺少的库。

最佳答案

较旧的glibc版本在clock_getres中定义了clock_gettimelibrt,而不是libc,因此您可能只需要链接-lrt即可。

08-27 14:26