Instalé libgoogle-perftools-dev a través del centro de software en Ubuntu 12.04. Como lo sugierehttp://pj.freefaculty.org/blog/?p=140, quiero agregar a mi archivo cpp:
#include <gperftools/profiler.h>
Pero el compilador dice
gperftools/profiler.h: No such file or directory
Intenté encontrar dónde está:
$ locate -i gperftools
sin retorno, y
$ locate -i "profiler.h"
devoluciones
/usr/include/c++/4.6/profile/impl/profiler.h
/usr/src/linux-headers-3.2.0-23-generic-pae/include/config/function/profiler.h
para lo cual no estoy seguro si son gperftools
.
Entonces me pregunto cómo encontrar
- ¿Dónde está instalado libgoogle-perftools-dev?
- ¿Dónde se encuentra gperftools/profiler.h?
Respuesta1
Probablemente el problema con el locate
comando es que la base de datos aún no se ha actualizado para reflejar los archivos del paquete recién instalado. Podrías forzar una actualización ( sudo updatedb
) o usar el find
comando en su lugar, pero probablemente la solución más fácil en sistemas como Ubuntu que usan dpkg
herramientas de administración de paquetes es enumerar el contenido del paquete.
dpkg -L libgoogle-perftools-dev
o para comprobar la profiler.h
ubicación del archivo específicamente
dpkg -L libgoogle-perftools-dev | grep 'profiler.h'
Respuesta2
Por lo general, pkg-config ayuda en la mayoría de estos casos
pkg-config --list-all
a enumerar paquetes que son "conocidos" por su sistema. Y luego pkg-config --libs --cflags <package>
es lo suficientemente bueno como para proporcionar un enlazador e incluir información.