JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.3:使用 dbx 调试程序     Oracle Solaris Studio 12.3 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

1.  dbx 入门

2.  启动 dbx

3.  定制 dbx

4.  查看和导航到代码

5.  控制程序执行

6.  设置断点和跟踪

7.  使用调用堆栈

8.  求值和显示数据

9.  使用运行时检查

10.  修复并继续

11.  调试多线程应用程序

12.  调试子进程

13.  调试 OpenMP 程序

14.  处理信号

15.  使用 dbx 调试 C++

16.  使用 dbx 调试 Fortran

17.  使用 dbx 调试 Java 应用程序

18.  在机器指令级调试

19.  将 dbx 与 Korn Shell 配合使用

20.  调试共享库

A.  修改程序状态

B.  事件管理

C.  宏

D.  命令参考

assign 命令

本地模式语法

Java 模式语法

attach 命令

语法

连接到运行中的 Java 进程

bsearch 命令

语法

call 命令

本地模式语法

Java 模式语法

cancel 命令

语法

catch 命令

语法

check 命令

语法

clear 命令

语法

collector 命令

语法

collector archive 命令

语法

collector dbxsample 命令

语法

collector disable 命令

语法

collector enable 命令

语法

collector heaptrace 命令

语法

collector hw_profile 命令

语法

collector limit 命令

语法

collector mpitrace 命令

语法

collector pause 命令

语法

collector profile 命令

语法

collector resume 命令

语法

collector sample 命令

语法

collector show 命令

语法

collector status 命令

语法

collector store 命令

语法

collector synctrace 命令

语法

collector tha 命令

语法

collector version 命令

语法

cont 命令

语法

dalias 命令

语法

dbx 命令

本地模式语法

Java 模式语法

选项

dbxenv 命令

语法

debug 命令

本地模式语法

Java 模式语法

选项

delete 命令

语法

detach 命令

本地模式语法

Java 模式语法

dis 命令

语法

选项

display 命令

本地模式语法

Java 模式语法

down 命令

语法

dump 命令

语法

edit 命令

语法

examine 命令

语法

exception 命令

语法

exists 命令

语法

file 命令

语法

files 命令

本地模式语法

Java 模式语法

fix 命令

语法

fixed 命令

语法

fortran_modules 命令

语法

frame 命令

语法

func 命令

本地模式语法

Java 模式语法

funcs 命令

语法

gdb 命令

语法

handler 命令

语法

hide 命令

语法

ignore 命令

语法

import 命令

语法

intercept 命令

语法

java 命令

语法

jclasses 命令

语法

joff 命令

语法

jon 命令

语法

jpkgs 命令

语法

kill 命令

语法

language 命令

语法

line 命令

语法

示例

list 命令

语法

选项

示例

listi 命令

loadobject 命令

语法

loadobject -dumpelf 命令

语法

loadobject -exclude 命令

语法

loadobject -hide 命令

语法

loadobject -list 命令

语法

loadobject -load 命令

语法

loadobject -unload 命令

语法

loadobject -use 命令

语法

lwp 命令

语法

lwps 命令

语法

macro 命令

语法

mmapfile 命令

语法

示例

module 命令

语法

modules 命令

语法

native 命令

语法

next 命令

本地模式语法

Java 模式语法

nexti 命令

语法

omp_loop 命令

语法

omp_pr 命令

语法

omp_serialize 命令

语法

omp_team 命令

语法

omp_tr 命令

语法

pathmap 命令

语法

示例

pop 命令

语法

print 命令

本地模式语法

Java 模式语法

proc 命令

语法

prog 命令

语法

quit 命令

语法

regs 命令

语法

示例(SPARC 平台)

replay 命令

语法

rerun 命令

语法

restore 命令

语法

rprint 命令

语法

rtc showmap 命令

语法

rtc skippatch 命令

语法

run 命令

本地模式语法

Java 模式语法

runargs 命令

语法

save 命令

语法

scopes 命令

语法

search 命令

语法

showblock 命令

语法

showleaks 命令

语法

showmemuse 命令

语法

source 命令

语法

status 命令

语法

示例

step 命令

本地模式语法

Java 模式语法

stepi 命令

语法

stop 命令

语法

本地模式语法

Java 模式语法

stopi 命令

语法

suppress 命令

语法

sync 命令

语法

syncs 命令

语法

thread 命令

本地模式语法

Java 模式语法

threads 命令

本地模式语法

Java 模式语法

trace 命令

语法

本地模式语法

Java 模式语法

tracei 命令

语法

uncheck 命令

语法

undisplay 命令

本地模式语法

Java 模式语法

unhide 命令

语法

unintercept 命令

语法

unsuppress 命令

语法

unwatch 命令

语法

up 命令

语法

use 命令

watch 命令

语法

whatis 命令

本地模式语法

Java 模式语法

when 命令

语法

本地模式语法

Java 模式语法

wheni 命令

语法

where 命令

本地模式语法

Java 模式语法

whereami 命令

语法

whereis 命令

语法

which 命令

语法

whocatches 命令

语法

索引

loadobject 命令

loadobject 命令用于列出和管理装入对象中的符号信息。仅在本地模式中有效。

语法

loadobject -list [regexp] [-a]

显示当前装入的装入对象(请参见loadobject -list 命令

loadobject -load loadobject

为指定的装入对象装入符号(请参见loadobject -load 命令)。

loadobject -unload [regexp]

卸载指定的装入对象(请参见loadobject -unload 命令)。

loadobject -hide [regexp]

dbx 的搜索算法中删除装入对象(请参见loadobject -hide 命令)。

loadobject -use [regexp]

将装入对象添加到 dbx 的搜索算法中(请参见loadobject -use 命令)。

loadobject -dumpelf [regexp]

显示装入对象的各种 ELF 详细信息(请参见loadobject -dumpelf 命令)。

loadobject -exclude ex_regexp

不自动装入与 ex_regexp 匹配的装入对象(请参见loadobject -exclude 命令)。

loadobject exclude -clear

清除模式排除列表(请参见loadobject -exclude 命令)。

其中:

regexp 是正则表达式。如果未指定,则该命令应用于所有装入对象。

ex_regexp 不是可选的,必须指定。

该命令的缺省别名是 lo

loadobject -dumpelf 命令

loadobject -dumpelf 命令用于显示装入对象的各种 ELF 详细信息。仅在本地模式中有效。

语法

loadobject -dumpelf [regexp]

其中:

regexp 是正则表达式。如果未指定,则该命令应用于所有装入对象。

该命令可转储出磁盘上装入目标文件的 ELF 结构的相关信息。该输出的详细信息随时变化。如果要分析此输出,请使用 Solaris OS 命令 dumpelfdump

loadobject -exclude 命令

loadobject -exclude 命令用于告知 dbx 不要自动装入与指定正则表达式匹配的装入对象。

语法

loadobject -exclude ex_regexp [-clear]

其中:

ex_regexp 是正则表达式。

此命令可防止 dbx 自动为与指定正则表达式匹配的装入对象装入符号。与其他 loadobject 子命令中的 regexp 不同,如果未指定 ex_regexp,并不表示缺省情况下应用于所有装入对象。如果未指定 ex_regexp,该命令将列出先前的 loadobject -exclude 命令指定的排除模式。

如果指定 -clear,则删除排除模式列表。

目前这种功能不能用于防止装入主程序或运行时链接程序。另外,如果使用它防止装入 C++ 运行时库,可能会导致某些 C++ 功能无法正常使用。

此选项不能与运行时检查 (RTC) 一起使用。

loadobject -hide 命令

loadobject -hide 命令用于从 dbx 的搜索算法中删除装入对象。

语法

loadobject -hide [regexp]

其中:

regexp 是正则表达式。如果未指定,则该命令应用于所有装入对象。

该命令从程序范围中删除装入对象,并隐藏其函数和符号,不让 dbx 得知。该命令也重置“预装入”位。

loadobject -list 命令

loadobject -list 命令用于显示当前装入的装入对象。仅在本地模式中有效。

语法

loadobject -list [regexp] [-a]

其中:

regexp 是正则表达式。如果未指定,则该命令应用于所有装入对象。

显示每个装入对象的全路径名,并在旁边显示表示状态的字母。仅当指定了 -a 选项时,才会列出隐藏的装入对象。

h

此字母表示“隐藏”(whatisstop in 之类的符号查询不会找到符号)。

u

如果有活动进程,u 表示“已取消映射”。

p

此字母表示预装入的装入对象,即程序中 loadobject -load 命令或 dlopen 事件的结果。

例如:

(dbx) lo -list libm
/usr/lib/64/libm.so.1
/usr/lib/64/libmp.so.2
(dbx) lo -list ld.so
h  /usr/lib/sparcv9/ld.so.1 (rtld)

上述示例表明,缺省情况下,运行时链接程序的符号处于隐藏状态。要在 dbx 命令中使用这些符号,请参见loadobject -use 命令

loadobject -load 命令

loadobject -load 命令用于为指定装入对象装入符号。仅在本地模式中有效。

语法

loadobject -load loadobject

其中:

loadobject 可以是全路径名,也可以是 /usr/lib/usr/lib/sparcv9/usr/lib/amd64 中的库。如果在调试某个程序,将仅搜索适当的 ABI 库目录。

loadobject -unload 命令

loadobject -unload 命令用于卸载指定的装入对象。仅在本地模式中有效。

语法

loadobject -unload [regexp]

其中:

regexp 是正则表达式。如果未指定,则该命令应用于所有装入对象。

该命令卸载与命令行中提供的 regexp 匹配的所有装入对象的符号。不能卸载使用 debug 命令装入的主程序。另外,dbx 可能会拒绝卸载当前正在使用或对 dbx 的正确运行至关重要的其他装入对象。

loadobject -use 命令

loadobject -use 命令用于向 dbx 的搜索算法中添加装入对象。仅在本地模式中有效。

语法

loadobject -use [regexp]

其中:

regexp 是正则表达式。如果未指定,则该命令应用于所有装入对象。