NAME¶
sb2-show - sb2 diagnostics tool
SYNOPSIS¶
sb2-show [-b binary_name ] [-m mode ] [-f function ] [-D ] [-v ] command
[parameters]
DESCRIPTION¶
sb2-show is a tool for querying and testing what scratchbox2 does
"behind the scenes".
The two most common uses are testing path mapping (commands
path and
which ) and finding out how programs are executed (the
exec
command). Additionally, there are some commands that are intended to be used
internally by
scratchbox2 itself, and not so useful for a normal user.
sb2-show must be executed inside a scratchbox2 session (see
sb2(1)
for details about creating sessions)
COMMANDS¶
Common commands:
- path [path1] [path2] [pathN]
- Show mapping results for listed pathnames
- which [path1] [path2]..
- Show mappings of pathnames, a less verbose variant of the path
command (useful when using sb2-show from scripts)
- exec program_path [arg1] [arg2]..
- Show how a program would be executed, together with environment
modifications.
- realcwd
- Show real current working directory (Inside a session /bin/pwd will
usually report virtual paths, and this is the only way to determine the
real wroking directory).
Commands for non-interactive use and debugging of scratchbox2:
- exec-cmdline file [argv1] [argv2]..
- show execve() modifications on a single line (does not show full details,
useful when using sb2-show from scripts)
- log-error 'message'
- Add an error message to the logfile
- log-warning 'message'
- Add a warning message to the logfile
- verify-pathlist-mappings required-fix [ignorelist]
- Reads list of paths from stdin and checks that all paths will be mapped to
a required prefix. This is used by sb2-check-pkg-mappings, (an
internal utility).
- execluafile filename
- Load and execute Lua code from file.
- binarytype realpath
- detect & show type of program at realpath (which is an already
mapped path)
- var variablename
- show value of an internal string variable
- libraryinterface
- show preload library interface version (the Lua <-> C code
interface)
- qemu-debug-exec file argv0 [argv1] [argv2]..
- show command line that can be used to start target binary under qemu
gdbserver
OPTIONS¶
- -v
- verbose.
- -b binary_name
- show using binary_name as name of the calling program
- -f function
- show using function as callers name (full name of library or system
call)
- -D
- Ignore directories while verifying path lists (effective only for the
verify-pathlist-mappings command)
- -t
- report elapsed time (real time elapsed while executing the command)
- -x file
- Load and execute Lua code from file before executing the command. Useful
for debugging and tuning lua scripts of sb2.
- -X file
- Load and execute Lua code from file after executing the command. Useful
for debugging and tuning lua scripts of sb2.
- -g port
- use port as qemu gdbserver listening port (default port is 1234). See
command qemu-debug-exec
EXAMPLES¶
Show where the /etc directory gets mapped:
$ sb2 sb2-show path /etc
/etc => /opt/maemo/tools/etc (readonly)
(exact results depend on how
sb2-init was executed; what mapping mode is
the default, etc.)
Typically, home directories are not mapped:
$ sb2 sb2-show path /home/yourname
/home/yourname => /home/yourname
In development modes, host-compatible versions of tools are executed:
$ sb2 sb2-show exec /bin/ls
File /bin/ls
Mapped /opt/maemo/tools/bin/ls (readonly)
argv[0] /bin/ls
...
But in the emulation mode, only target's executables are used. Try also:
$ sb2 -e sb2-show exec /bin/ls
SEE ALSO¶
sb2(1),
sb2-config(1),
sb2-logz(1),
sb2-init(1)
AUTHOR¶
Lauri Aarnio