README.md
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 05 Oct 2018 09:11:56 +0100
changeset 117 1ae8e04f5feb
parent 108 277fadaec466
child 142 dae35d5b3d72
permissions -rw-r--r--
UI: add option to change debugger layout and preference to set the default layout
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
103
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
# Visual / VM Debugger
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
*Visual / VM Debugger* (*VDB* for short) is a simple standalone graphical 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
front-end for [GDB][2] aimed to debug, not only, virtual machines. It provides
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
easy-to-use, easy-to-extend user interface while keeping full power of GDB 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
command line and scripting facilities. 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
## Features
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
  * integrated support for reverse-debugging
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
  * source-and-assembly view with detailed instruction analysis (basic blocks, 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
    jump targets and so on)
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
  * data structure inspector
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
  * configurable memory view
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
  * integrated *GDB* command line
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
## Prerequisites
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
It is recommended to use the latest GDB built from GDB [git master][4] as it
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
contains changes required by *VDB*.
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
## Building from Source
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
*Visual / VM Debugger* is a part of [Smalltalk/X jv-branch][3] since 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
version 8.0.0. To build VDB, just follow instructions how to [build 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
Smalltalk/X jv-branch][6] and then run either:
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
```
107
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    29
./build/stx/projects/smalltalk/smalltalk --load jv:vdb --run VDBStartup
103
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
```
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
Or evaluate following in a workspace: 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
```
107
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    35
Smalltalk loadPackage: 'jv:vdb'.
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    36
VDBStartup main.
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    37
"or"
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    38
VDBStartup main: #('--help')
103
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
```
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
## Pre-built binaries
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
Download and unpack latest [Smalltalk/X jv-branch toy archive][5]
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
and run run:
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
```
107
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    47
stx --load jv:vdb --run VDBStartup
103
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
```
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
Or evaluate following in a workspace: 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
```
107
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    53
Smalltalk loadPackage: 'jv:vdb'.
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    54
VDBStartup main.
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    55
"or"
d98c11f9a7f5 Move `VDBStartup` from `jv:vdb/application` to `jv:vdb`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
    56
VDBStartup main: #('--help')
103
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
```
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
## Reporting issues
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
Use [Smalltalk/X jv-branch issue tracker][6] to [report issues][7] (you may need
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
to login using your Google account in order to submit an issue). Alternatively,
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
send a message to [Smalltalk/X mailing list][8]. 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
## Author
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
Jan Vrany `<jan.vrany [at] fit.cvut.cz>`
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
## License
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
![CC-BY-NC](https://i.creativecommons.org/l/by-nc/4.0/88x31.png)
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
This software is licensed under [Creative Commons Attribution-NonCommercial 4.0 International License][1]. You may find a full license text in `LICENSE.txt`.
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
In short, you are free to:
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
* **Share** — copy and redistribute the material in any medium or format,
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
* **Adapt** — remix, transform, and build upon the material,
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
under the following terms: 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
* **Attribution** — You must give appropriate credit, provide a link to the license, and indicate if changes were made, 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
* **NonCommercial** — You may not use the software for commercial purposes.
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
For permissions beyond the scope of this license please contact author at 
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
`<jan.vrany [at] fit.cvut.cz>`
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
[1]: http://creativecommons.org/licenses/by-nc/4.0/
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
[2]: https://www.gnu.org/software/gdb/
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
[3]: https://swing.fit.cvut.cz/projects/stx-jv
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
[4]: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
[5]: https://swing.fit.cvut.cz/jenkins/job/stx_jv/lastSuccessfulBuild/
108
277fadaec466 Fix link in `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 107
diff changeset
    93
[6]: https://swing.fit.cvut.cz/projects/stx-jv/wiki/Documentation/BuildingStXWithRakefiles
103
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
[7]: https://swing.fit.cvut.cz/projects/stx-jv/newticket
df0374b41f76 Added `README.md`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
[8]: https://groups.google.com/forum/#!forum/stx-jv