On my frech install of the RH6.1, the file beginning of the file /usr/include/rpm/rpmlib.h is : ... #include <rpmio.h> #include <dbindex.h> #include <header.h> #include <popt.h> and it should be ... #include <rpm/rpmio.h> #include <rpm/dbindex.h> #include <rpm/header.h> #include <popt.h> because gcc said said that it could not find rpmio.h, dbindex.h and header.h
Add -I/usr/include/rpm to your CFLAGS.
I believe that this is still a bug. The maximum rpm book says to write #include <rpm/rpmlib.h> but then the header files don't work unless I write -I/usr/include/rpm in which case I could have written #include <rpmlib.h> And what if I am writing something that wants to use another package that has a header.h file in its include path somewhere. (E.g. /usr/include/pci/header.h) In that case I could end up with a collision.