我正在尝试运行一个已经制作并适用于Ubuntu但在Mac OS上运行的项目。当我做make时,我得到以下错误:
ld: library not found for -lrt
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [consumer] Error 1
make[1]: *** [CMakeFiles/consumer.dir/all] Error 2
make: *** [all] Error 2
我在Thole项目中看不到任何带有该名称的库。
任何人都可以解释它是什么以及如何解决它?
答案 0 :(得分:6)
在旧的Linux系统上,记录了几个函数,例如clock_gettime
,需要{em} libc的旧版本-lrt
。 最近 glibc(从2013年开始的2.17之后)就不再这样了。
因此,您可以从-lrt
中移除Makefile
(并从生成它的cmake
配置项中删除该内容。)
顺便说一句,删除-lrt
也适用于最近的 Linux发行版。
PS。如果您支持Linux系统,您应该向您的支持部门寻求建议。