### 2.3 Troubleshooting dependencies

Sometimes, `./configure` says it cannot find a library while the library is installed. Really, it may just not find its headers which live in a separate package. Many modern operating system distributions split a library into two packages:

1. A package with binary files, say a `libfoo` package, which contains the files necessary to run programs which use `libfoo`.
2. A development package, `libfoo-dev` or `libfoo-devel`, which contains the files necessary to compile programs which use `libfoo`.

If you’re having problems, make sure that you have all of the necessary development packages installed.