- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我是 ltrace 的新手。
例如这有效:
ltrace -c -e "XDrawLine" -p 10876 ^C
% time seconds usecs/call calls function
------ ----------- ----------- --------- --------------------
100.00 4.925592 501 9829 XDrawLine
------ ----------- ----------- --------- --------------------
100.00 4.925592 9829 total
但这什么都不匹配:
trace -c -e "XDrawLin*" -p 10876
^C
% time seconds usecs/call calls function
------ ----------- ----------- --------- --------------------
------ ----------- ----------- --------- --------------------
100.00 0.000000 0 total
此外,-e "/XDrawLin.*/"
或 -e "XDrawLin.*"
也不走运。感谢任何工作示例。
最佳答案
-e
开关的功能在 ltrace
版本中不断发展。即使是相当新的 Linux 版本也经常附带较旧的 ltrace,这很可能是您的问题。 (例如,如果我没记错的话,RHEL6 附带 0.5 版。)运行 ltrace --v
并确保您的版本为 0.7 及更高版本。
* Version 0.7.0 [2012-11-09 Fri]** Tracing...*** Limited support for tracing returns from tail call functions*** -e, -x and -l selectors now allow using globs and regular expressions
http://anonscm.debian.org/gitweb/?p=collab-maint/ltrace.git;a=blob_plain;f=NEWS;hb=0.7.3
如果您有较旧的 ltrace - 使用您的包管理器更新它或从 http://freecode.com/projects/ltrace 下载它
关于c++ - 如何使用带通配符的 ltrace,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21088536/
strace 密码: getcwd("/root"..., 4096) = 6 ltrace 密码: getcwd(NULL, 0)
当 ltrace 命中一个 rand 函数时,它会显示 4 个参数,如下所示:随机数 (0, 0x5649bd4e6010, 0x7f0955490760, 0x7f09551cf7b0) = 0
我正在运行 ltrace -c -C ./a.out 来对我的应用程序进行一些分析,但它给出的错误如下: 错误:调用嵌套太深! 我的代码很简单 void StrinstrTest(long loop/
我是 ltrace 的新手。 我想使用通配符(模式)来跟踪函数调用,但根据我看到的网页,它们似乎无法正常工作,例如http://man7.org/linux/man-pages/man1/ltrace
根据手册页,ltrace 应该拦截并记录任何已执行进程的动态库调用,但它似乎无法在某些二进制文件上正常工作。 这是在尝试跟踪 strcpy 时重现问题的方法。 我首先看到 ltrace 能够处理一些二
ltrace 是如何工作的? 它如何找到该程序调用的库函数? 所有对库函数的调用是否有通用的代码路径?也许 ltrace 正在这个公共(public)代码路径中设置断点? 谢谢! 最佳答案 动态可执行
正如标题所说,ltrace 在我的系统上不能正常工作。在大多数情况下它不显示任何输出,比如 $ltrace ls [usual ls output] +++ exited (status 0) +++
osx 拥有非常强大的 dtrace/ktrace/dtruss 工具——但是我现在不愿意投入必要的时间来学习如何处理它们。 在 OSX 上获得 linux ltrace(可能还有 strace)等效
标题说的都是 friend ! 如何为我想使用 ltrace/strace 监视其执行的可执行文件提供命令行参数? 例如,如果可执行文件是 'a.out' 并且我想将 ltrace 的输出存储在文件
根据我的理解,ltrace 实用程序用于跟踪库调用。我ltrace了一个只调用printf的简单程序,但是库函数显示的是puts而不是printf。我很好奇为什么它不显示 printf 而显示 put
我是否可以查看行号和文件名(对于我的使用 ltrace/strace 运行的程序)以及库调用/系统调用信息。 例如: code section :: ptr = malloc(sizeof(int)*
我想知道如何使用 ltrace 来获取 mpi 应用程序的库函数调用,但 ltrace 不起作用,我的 mpirun 无法成功。有什么想法吗? 最佳答案 您应该能够简单地使用: $ mpiexec -
在打了一堆补丁之后,我能够运行 Makefile,但现在它在最后一步崩溃了 :(。这是我得到的错误: arm-none-linux-gnueabi-gcc main.o libltrace.a -le
我需要分析 android 应用程序的动态库调用,并决定为此目的使用“ltrace”工具进行分析。我将“ltrace”工具合并到android包中,然后一起编译成功。就像通常的 linux 控制台应用
我已经为此苦苦挣扎了大约一天。 我能够构建一个简单的共享库和测试程序,当我在 ltrace 控制下运行它时,我可以获得预期的方法名称,包括静态、虚拟和纯虚拟方法。 我使用 cmake 构建我的共享库。
ltrace doesn't work on binaries linked with the -z now option ,这是我的 Ubuntu 19.10 系统上的默认设置。它仅适用于与 -z
有没有办法隐藏来自 strace 的系统调用?和来自 ltrace 的动态库调用?例如,使用 system ()。 在本学期我的软件构建的最后一个类中,讲师向我们透露,我们本可以使用 system我们
我尝试过使用 ltrace。我尝试使用以下命令来分析程序 sampleapp, ltrace -c -T --library=library.so --output=out 使用的 library.s
我是一名优秀的程序员,十分优秀!