FAQ:Compiling 03
Why does the compilation complain about missing libraries?
This has been seen in a number of guises over the years - most commonly on Linux systems (although the problem may also occur elsewhere). A typical installation may not always include the full set of library links required for building the Net-SNMP software.
This problem can usually be fixed by installing the missing packages (typically the development version of a package that is already there).
Examples of this that we have come across include:
-lelf elfutils-devel (later renamed to elfutils-libelf-devel) -lbz2 bzip2-devel -lselinux libselinux-devel -lcrypto openssl/openssl-devel -lbeecrypt libbeecrypt/beecrypt/beecrypt-devel.
These are the names of the RedHat/Fedora RPMs. Other distributions or O/S's may use different names, but the basic idea should be the same.
If the compilation is complaining about a missing .so file, then an alternative quick fix is to add the missing symbolic link, using something like:
ln -s libelf.so.1 /usr/lib/libelf.so
giving the appropriate generic library name from the error message, and the correct number for whichever version of this library you have installed.
If the compilation is complaining about a .la file, then you should install the relevant development package, as listed above.
FAQ:Compiling
- How do I control the environment used to compile the software?
- How do I control the environment used to compile the software under Windows?
- Why does the compilation complain about missing libraries?
- How can I reduce the memory footprint?
- How can I reduce the installation footprint or speed up compilation?
- How can I compile the project for use on an embedded system?
- How can I compile the project to use static linking?
- Why does 'make test' skip various tests?
- Why does 'make test' complain about a pid file?