Valcrind on macOS Sierra

时间:2016-11-17 08:52:03

标签: valgrind macos-sierra

我遵循本指南:

valgrind installation guide

下载软件包后,我运行了sh脚本,但是当我启动make install命令时,它无法创建文件夹,因为它没有权限(即使我有使用了sudo命令。

此外我尝试使用brew但我有这个错误:

  

valgrind:这个公式要么不在macOS上按预期编译或运行   由于上游不兼容而导致比El Capitan更新的版本。

     

错误:此构建未满足要求失败。

5 个答案:

答案 0 :(得分:49)

您可以从website下载Valgrind的最新版本。然后,您可以./autogen.sh安装Valgrind。我个人没有遇到make所需的任何内容。

然而,令人遗憾的是,即便是最新版本的Valgrind在Mac OS Sierra上也不是很有用。原因是Apple没有发布导致Valgrind崩溃的部分源代码,如果没有,那么Valgrind维护者几乎无法做任何事情。您可以阅读有关问题here的讨论的更多信息。

因为Mac OS内核位于Apple Public Source License之下,所以有一天它必须是开源的。因此,Valgrind的Sierra可编辑版本只是时间问题。

目前,我在Linux下使用Valgrind。这就是我现在所能提出的建议。

答案 1 :(得分:9)

最新的Valgrind(git版本3.13.0)现在适用于MacOS Sierra,但需要安装Xcode命令行工具(安装所需的头文件)。

在构建Valgrind之前运行它:

xcode-select --install

感谢this post

答案 2 :(得分:3)

如果您收到类似于

的错误
  

valgrind:此公式未按预期编译或运行   由于上游,在比Sierra更高的macOS版本上   不兼容。

您可以尝试解决方法brew install --HEAD valgrind,我在https://www.gungorbudak.com/blog/2018/04/28/how-to-install-valgrind-on-macos-high-sierra/

处找到了此信息

答案 3 :(得分:0)

如果您碰巧仍然在Sierra上,那么可以使用(但不能在High Sierra上使用),

$ brew install valgrind

 valgrind: This formula either does not compile or function as expected on macOS
 versions newer than Sierra due to an upstream incompatibility.
 Error: An unsatisfied requirement failed this build.

答案 4 :(得分:0)

我知道这是一个古老的问题,但是我已经厌倦了不支持Valgrind的macOS的最后几个版本,所以我只是用Python编写了一个简单的工具,允许您通过Docker使用Valgrind:

https://github.com/kokkonisd/macgrind