ld: library not found for -lrt

Refresh

February 2019

Views

1.5k time

1

I am trying to run a project that was made and works for Ubuntu but on Mac OS. And when I am doing the make I got the following error:

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

I can't see any library with that name at thole project.

Can anyone explain what it is and how to solve it?

1 answers

3

На старых системах Linux, несколько функций, таких как clock_gettime, задокументированы нуждаться -lrtв старых версиях GNU LIBC. Все это не более дело о недавнем Glibc (после 2,17 с 2013 года).

Таким образом , вы можете удалить -lrt от вашего Makefile(и удалить вещь из вашей cmakeконфигурации вещи порождающей ее).

Кстати, удаление -lrtдолжно также соответствовать для последних дистрибутивов Linux.