优胜美地和Valgrind

Koz*_*zxc 111 macos valgrind osx-yosemite

你能告诉我如何在优胜美地上安装valgrind吗?当我尝试安装它时,我得到"检查内核版本...不支持(14.0.0)configure:错误:Valgrind适用于Darwin 10.x,11.x,12.x和13.x(Mac OS X) 10.6/7/8/9)"

没有官方路径或更新,我没有找到任何东西(除了http://comments.gmane.org/gmane.comp.kde.devel.bugs/1553705,但他们没有解决这个问题).

小智 288

由于没有支持Yosemite的稳定版本,您可以安装最新的开发版本

brew install --HEAD valgrind
Run Code Online (Sandbox Code Playgroud)

  • 此命令不再有效.我收到此消息:`错误:无法下载资源"valgrind - patch"下载失败:https://gist.githubusercontent.com/jacknagel/cd26a902d72aabd0b51d/raw/1a61a328a87a728dccbeef0594f6fe335e9bf917/valgrind-sdk-paths-Makefile-am.diff ` (5认同)

Rhy*_*idd 50

虽然在过去的OS X发布周期中Valgrind在获得合理的功能支持之前需要一段时间,但由于预发布Yosemite的重要工作,Valgrind主干已经提供了基本的OS X 10.10支持.

来自邮件列表:

最近一直在努力改善Valgrind对优胜美地的支持.如果你在Mac OS上开发,你可能想试试trunk(svn co svn://svn.valgrind.org/valgrind/trunk)并报告你得到的任何破损.对Yosemite的支持足够好,至少有一个大型图形应用程序(Firefox)运行正常.对先前版本10.9(Mavericks)的支持也得到了很大改善.

请注意,该工作仅针对64位进程.32位可能会起作用,而且在小牛队可能会更好,但我怀疑它在Yosemite上会越来越成问题,因为Valgrind的32位x86指令集支持没有通过SSSE3.

朱利安西沃德

http://sourceforge.net/p/valgrind/mailman/message/33047840/

完全披露:我是新的Valgrind开发人员之一,他们提供了补丁以支持OS X 10.10

  • +1为贡献valgrind.把它反对我的代码.它指出了一个分段错误的原因,因为我找不到原因,过去24小时一直让我发疯. (14认同)

小智 11

Valerio的svn工作流程将下载每个时间和资源消耗的分支.更好的方法是只下载主干:

svn co svn://svn.valgrind.org/valgrind/trunk valgrind
cd valgrind
./autogen.sh
./configure
make
make install
Run Code Online (Sandbox Code Playgroud)


kal*_*iya 8

这是我的看法.我或多或少有一个安装了xcode的干净mac.通过以下方式编译并运行:

# build/install autoconf/automake/libtool so that 'autogen' works
curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz
tar -xzf autoconf-2.69.tar.gz 
cd autoconf-2.69
./configure && make && sudo make install
cd ..

curl -OL http://ftpmirror.gnu.org/automake/automake-1.14.tar.gz
tar -xzf automake-1.14.tar.gz
cd automake-1.14
./configure && make && sudo make install
cd..

curl -OL http://ftpmirror.gnu.org/libtool/libtool-2.4.2.tar.gz
tar -xzf libtool-2.4.2.tar.gz
cd libtool-2.4.2
./configure && make && sudo make install
cd ..

svn co svn://svn.valgrind.org/valgrind/trunk valgrind
cd valgrind
./autogen.sh
# important: configure-params, otherwise make ends in errors 
./configure -disable-tls --enable-only64bit --build=amd64-darwin 
make
# sudo, otherwise it fails due to permissions 
sudo make install  
Run Code Online (Sandbox Code Playgroud)

请注意,callgrind_control(来自valgrind-3.11.0 SVN)似乎不能在OS X上运行,看起来像perl脚本,它运行的命令行工具(vgdb -l)会打印出一些"意外"的脚本,该脚本不会正确解析(因此无法找到使用valgrind运行的其他进程).

或者,perl脚本只调用vgdb,我们也可以直接执行此操作(只需手动找出你的process-id):

vgdb --pid=2858 instrumentation on
Run Code Online (Sandbox Code Playgroud)


Val*_*oni 7

10.10.1为我工作:

svn co svn://svn.valgrind.org/valgrind
cd valgrind
./autogen.sh
./configure
make
make install
Run Code Online (Sandbox Code Playgroud)


big*_*can 7

这里列出的所有解决方案都不适合我.最终工作的是使用mac端口.

sudo port install valgrind-devel