This is in part a duplicate of these questions:
apt has a new, simplified, slightly snazzier interface I'll use the new version here and make the common point more clear.
I know that these include files should have also been installed by apt-get
Library packages are usually installed as dependencies of other binaries. To serve at runtime, the include/header files (i.e.,
.h files) are not required, so these are kept in a separate
-dev package (there may be other non-essential odds and ends as well, and possibly debugging symbols are in yet another package, but
gdb should explain this to you when you need them).
So to find it, a general approach might be:
apt search libfcgi | grep -B 2 dev
-B 2 here includes the two previous lines of the search hit, since the output of
apt search (vs. the older style
apt-cache search) is is split across several lines and the description will be on one of its own preceded by the package name. In this case it's actually unnecessary since we're looking for a hit on part of the package name (
dev) and so the output ends up as:
Full Text Search...
libfcgi-dev/stable 2.4.0-8.3 armhf
So the headers can probably be installed via
apt install libfcgi-dev. Likely in this case so are the static archives (see below).
Another way of doing this, which provides more confirmation, is to
apt install apt-file, then e.g.:
> apt-file search fcgi_config.h
Beware while this one works, it is dependent on the package database info being correct, which is sometimes not the case on Raspbian -- presumably it happens when lib packages must be split in odd ways but there is not the resources people wise to manage them all properly. There are a few examples of this coming up.
I should get the source and compile it on the Pi
This is rarely necessary and should only be done as a last resort or because you need a particular version of something which is unavailable. In that case you install to
/usr/local and subsequently run
ldconfig for libraries so the linker will index them.
make complains that @LIBTOOL@ is missing
Solving this involves the same general approach...
apt search libtool
There are various hits but hint, it's just
libtool. There should be some meta package that's good for that and various other things such as "build-essential" but I am not sure what it is called (although a quick search for "linux debian apt install build essential" confirms that it is; remember, Raspbian is essentially Debian but Debian is much more extensively documented, so searching that way will lead to better results; you'll likely also get Ubuntu hits but those are very often applicable as well, particularly when it comes to package names).
gcc's man pages are absent
That's an odd one but I notice it's true on Raspbian even when gcc is installed.
apt search gcc | grep doc turns up various
/usr/share/man, you can see man pages on Raspbian are installed in gzipped form with a section number suffix, e.g.,
foobar.3.gz. The basename is the name of the man page; from the descriptions of man page sections in
man man section 1 ("Executable programs or shell commands") is a good guess, but
apt-file search gcc.1.gz implies some odd things, one of which is that the
gcc package includes a
c99-gcc man page -- but these are just short stubs.
Sometimes the online Debian search works better, and trying
gcc.1.gz via Search the contents of packages does claim it's in
gcc-doc, except here we have a discrepancy -- there is no such package in Raspbian. They've done something odd again. I believe this is consequent of the fact that the architecture doesn't correspond to any of the Debian ARM branches (including
armhf -- don't get confused by this), and the core C library and compiler are very specifically for ARM1176JZ(F)-S.
But there is a
gcc-4.9-doc, and subsequent to
apt install gcc-4.9-doc (a zany 14 MB...), you'll have a
man gcc. It may actually be in the dependency,
gcc-doc-base but a further likely Raspbian specific flub is that
dpkg -L doesn't show it in either one (or anything that would add up to 14 MB). Go figure. This is probably also why
apt-file doesn't find it properly.
Can somebody please point me to a COMPLETE libfcgi package for the Raspberry Pi 3?
The online Debian search claims it is in the
apt-file search on Raspbian doesn't find it, but as we've seen, it is imperfect. Since you're installing the dev package anyway, check to see if it's in
find /usr/lib -name libfcgi.a
If it's not, it has been left out and presumably either you make do with the
.so or else build from source.