@@ -12,7 +12,7 @@ using this image. For example, to build the multiboot application, run:
12
12
make docker-all
13
13
```
14
14
15
- This will create the multiboot2 application in ` target/multiboot2_target /release/mythril_multiboot2 ` .
15
+ This will create the hypervisor in ` mythril/ target/mythril_target /release/mythril ` .
16
16
It will also compile the patched versions for seabios and the linux kernel that
17
17
are currently required to use ` mythril ` . Unittests can be executed like:
18
18
@@ -27,26 +27,26 @@ After running the build steps as described above, an initramfs must be added to
27
27
can be executed with:
28
28
29
29
```
30
- make qemu
30
+ make docker- qemu
31
31
```
32
32
33
33
Note that this has only been tested on relatively recent versions of QEMU (v4.1.0+).
34
34
Older versions may contain bugs that could cause issues running the image.
35
35
36
36
## Debugging
37
37
38
- To debug mythril, first build the multiboot application as described above. Then
39
- run ` make qemu-debug ` . This will start start QEMU but not launch mythril . You can
40
- then run ` gdb target/multiboot2_target /debug/mythril_multiboot2 ` to launch gdb with
41
- the debug info from the application. You can then attach to the qemu instance with
42
- ` target remote localhost:1234 ` .
38
+ To debug mythril, run ` BUILD_TYPE=debug make qemu-debug ` . This will build a debug version
39
+ of the hypervisor then start start QEMU in a paused state . You can then run
40
+ ` gdb mythril/ target/mythril_target /debug/mythril ` to launch gdb with the debug info from
41
+ the application. You can attach to the qemu instance with ` target remote :1234 ` . Note that
42
+ debugging the hypervisor is generally not supported under docker .
43
43
44
44
Because the virtualization is hardware accelerated, remember to use ` hbreak ` instead
45
45
of ` break ` in gdb. For example, to put a breakpoint at the start of ` kmain ` and start
46
46
mythril, run:
47
47
48
48
```
49
- (gdb) target remote localhost :1234
49
+ (gdb) target remote :1234
50
50
Remote debugging using localhost:1234
51
51
0x000000000000fff0 in ?? ()
52
52
(gdb) hbreak kmain
0 commit comments