这是命令 apport-valgrind 可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
apport-valgrind - 首先下载调试符号的 valgrind 包装器
概要
批准-valgrind [ 配置 ] 可执行
商品描述
批准-valgrind 是一个自动下载相关可用调试的 valgrind 包装器
符号并将它们提供给 valgrind 的 memcheck 工具,该工具被执行。 输出是一个
包含堆栈跟踪的 valgrind 日志文件(“valgrind.log”)(具有尽可能多的符号
已解决)并显示内存泄漏。
默认情况下,会创建一个临时缓存目录来保存最新的调试符号
包。 这些被解压到一个临时沙箱目录中。 沙箱之路
目录提供给 valgrind 作为符号文件的附加位置。
您可以创建和使用持久缓存和沙箱目录来节省时间
多次执行,从而避免每次都需要重新创建它们。 全部下载
每次打包到缓存目录中都特别耗时。
建议在执行前更新您的系统。 这可以确保您的运行时间
环境与最新下载的符号包一致,因此结果
在来自 valgrind 的更完整的堆栈跟踪中。
可执行 是在 valgrind 下运行的程序。 总是终止 可执行 在其
通常的方式。 如果有,请从 GUI 中退出。 如果没有,请使用最合适的方法。
使用不同的技术来确定应将哪些包解包到
沙箱取决于是否 可执行 是否打包(由 debian 包安装)
(例如为开发或测试创建的东西)。 一个包装好的 可执行 具有
使用的 debian 依赖项。 对于未包装的 可执行, 共享对象文件
可以通过 ldd 找到并使用这些包。
配置
-C CDIR, --缓存=CDIR
重用之前创建的缓存目录 (CDIR) 或者,如果它不存在,则创建它。
--沙盒目录=SDIR
重用之前创建的沙箱目录 (SDIR) 或者,如果它不存在,则创建它
--无沙盒
不要为额外的调试符号创建或重用沙箱目录,而是依赖
仅在已安装的调试符号上。 这会加快执行时间,但可能会导致
如果您没有所有适当的调试,则不完整且不太有用的 valgrind 日志
已安装符号包。
-p, --额外包
指定要在沙箱中解压的额外包(或多个包)。 有用的添加
导致更完整的 valgrind 日志的附加调试符号包。
-v, --详细
在沙盒模式下安装软件包时报告下载/安装进度。
-l 日志文件, --日志=日志文件
指定生成的 valgrind 日志文件的文件名。 默认为:valgrind.log
-H, - 帮帮我
显示记录所有选项的简短帮助。
示例
创建和使用临时缓存和沙箱目录:
批准-valgrind 可执行
重用或创建缓存目录:
批准-valgrind -C CDIR 可执行
重用或创建沙箱目录:
批准-valgrind --sandbox-dir SDIR 可执行
知 问题
如果您异常终止在 valgrind 下运行的可执行文件,临时
目录可能不会被删除,进程可能不会全部终止。 例如,如果
可执行文件通常不会在 ctrl+c 上终止,在终端中按 ctrl+c 可能会
导致 apport-valgrind 和 valgrind 终止,但可能不会终止可执行文件和
可能不会删除临时目录。
作者
由马丁·皮特开发[电子邮件保护]>,Alex Chiang[电子邮件保护]>
和凯尔·尼采[电子邮件保护]>
使用 onworks.net 服务在线使用 apport-valgrind