I unpacked the .tar.gz file. I installed the gcc compiler. I ran the ./configure command with various flags and options. I ran make check and found an error. The exit status is 2. Only 0 is without errors. In the output I see this:

/bin/ld: cannot find -lcap collect2: error: ld returned 1 exit status make[6]: *** [test-crypto] Error 1

The ld utility is installed. I don't know what "-lcap" is. I found one website that seemed to have lcap packages. But the links were broken for Centos version 7. If you post a place where I can download lcap (which is not installed on my CentOS 7 server), please confirm the link isn't broken.

How do I fix this error so I can use the make install command to get NTP installed?


I don't know what "-lcap" is

The -l flag to the GCC C compiler tells it to link in a library, in this case called cap, which is an abbreviated version of the library name.

The full name is libcap.so.2.22 on CentOS 7, with the alias libcap.so.2. Chasing such details down is not your problem; leave it to the linker.

What does matter here is that you're missing the development package, which installs libcap.so, without the version number, which is what GCC's linker is looking for. It also installs a bunch more files which may also be necessary. So:

$ sudo yum install libcap-devel

That is a common pattern: to build programs using libfoo, you typically need to install libfoo-devel first.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.