我已经在 Ubuntu 12.04 中通过软件中心安装了 libgoogle-perftools-dev。正如建议的http://pj.freefaculty.org/blog/?p=140,我想添加到我的 cpp 文件中:
#include <gperftools/profiler.h>
但编译器说
gperftools/profiler.h: No such file or directory
我试图找到它在哪里:
$ locate -i gperftools
没有回报,并且
$ locate -i "profiler.h"
回报
/usr/include/c++/4.6/profile/impl/profiler.h
/usr/src/linux-headers-3.2.0-23-generic-pae/include/config/function/profiler.h
我不确定是否是为了gperftools
。
所以我想知道如何找到
- libgoogle-perftools-dev 安装在哪里?
- gperftools/profiler.h 位于哪里?
答案1
该命令的问题可能locate
是数据库尚未更新以反映新安装的包文件。您可以强制更新 ( sudo updatedb
) 或使用该find
命令,但在像 Ubuntu 这样使用包管理工具的系统上,最简单的解决方案dpkg
可能是列出包内容
dpkg -L libgoogle-perftools-dev
或专门检查profiler.h
文件位置
dpkg -L libgoogle-perftools-dev | grep 'profiler.h'
答案2
通常,pkg-config 在大多数情况下都会帮助
pkg-config --list-all
列出系统“已知”的软件包。然后pkg-config --libs --cflags <package>
就足以提供链接器并包含信息。