Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cmake 如何设置gperftools路径变量gperftools\u库gperftools\u INCLUDE\u DIR?_Cmake_Catkin - Fatal编程技术网

Cmake 如何设置gperftools路径变量gperftools\u库gperftools\u INCLUDE\u DIR?

Cmake 如何设置gperftools路径变量gperftools\u库gperftools\u INCLUDE\u DIR?,cmake,catkin,Cmake,Catkin,在柳絮项目中,柳絮制作失败。CMakeLists包括 find_package(Gperftools REQUIRED) 我已安装google perftools: google-perftools is already the newest version (2.4-0ubuntu5) CMake错误表示找不到gperftools,或者至少找不到路径变量: CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStand

在柳絮项目中,柳絮制作失败。CMakeLists包括

find_package(Gperftools REQUIRED) 
我已安装google perftools:

google-perftools is already the newest version (2.4-0ubuntu5)
CMake错误表示找不到gperftools,或者至少找不到路径变量:

CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Gperftools (missing: GPERFTOOLS_LIBRARIES
  GPERFTOOLS_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  tuw_mpn/FindGperftools.cmake:39 (find_package_handle_standard_args)
  tuw_mpn/CMakeLists.txt:40 (find_package)
经过几个小时的搜索,我还没有找到对设置的描述。有人能解释一下我如何解决这个错误吗

提前感谢,我希望我已经为这个问题提供了足够的信息

干杯,
Michael

不确定使用哪个脚本
FindGperftools.cmake
,但搜索库
tcmalloc_和_profiler
和头
gperftools/heap profiler.h

但是包
googleperftools
这些文件。(实际上,这个包不提供任何标题或库。)


该库由
libgoogle-perftools4
package提供。可能应该有一些提供标题的devel包。

您需要提供
FindGperftools.cmake

例如:

CMakeLists.txt
中添加以下内容:

# set the path to the library folder
link_directories(/usr/local/lib)

#Append Gperftools_DIR 
LIST(APPEND CMAKE_MODULE_PATH "/DirectoryWhereTheFindGperftools.cmakeIs")

find_package(Gperftools REQUIRED)

我用的是Ubuntu 16.04,你也有同样的问题。我认为问题在于缺少一些软件包:

sudo apt-get install gperf  libgoogle-perftools-dev

解决了我的问题后,您可以试一试。

关于如何教CMake查找库的一般建议:如果这没有帮助,您必须询问更具体的问题。您是否曾经删除CMake缓存/生成目录并重试?