-
Debug Swift debugging with LLDB
Learn how you can set up complex Swift projects for debugging. We'll take you on a deep dive into the internals of LLDB and debug info. We'll also share best practices for complex scenarios such as debugging code built on build servers or code from custom build systems.
Ressources
Vidéos connexes
WWDC21
WWDC19
WWDC18
-
Rechercher dans cette vidéo…
-
-
5:04 - Show info about all loaded dylibs
image list -
5:24 - Show debug info for a code address
image lookup -va $pc -
5:58 - Show help for target.source-map
settings list target.source-map -
6:37 - Remap source paths in LLDB
settings set target.source-map /Volumes/BUILD_SERVER/projects /Users/demo/Desktop/Adventure/3rdparty -
7:02 - Source path remapping
settings set target.source-map prefix new -
8:13 - Debug prefix map
-debug-prefix-map $PWD=/BUILDROOT -
8:32 - Print object description of "words"
po words expr -O -- words -
8:40 - Evaluate the expression "words"
p words expr words -
8:58 - Display the variable "words"
v words frame variable words -
10:10 - Raw memory of a Swift variable
mem read UnsafePointer<Items>(self.inventory) -
11:59 - See diagnostics from LLDB's embedded Swift compiler
swift-healthcheck -
15:47 - Register Swift modules with the Linker
ld … -add_ast_path /path/to/My.swiftmodule -
16:05 - Verify Swift modules were registered in binary
dsymutil -s MyApp | grep .swiftmodule -
16:12 - Wrapping Swift modules in object files on Linux
swiftc -modulewrap My.swiftmodule -o My.swiftmodule.o -
16:52 - Evaluate the expression "self"
p self -
16:58 - Print object description of "words"
po words expr -O -- words -
17:08 - Step into function call
s thread step-in -
17:10 - Step over instruction
n thread step-over -
18:23 - Avoiding serialized search paths in Swift modules (command line)
-no-serialize-debugging-options -
18:24 - Avoiding serialized search paths in Swift modules (Xcode)
SWIFT_SERIALIZE_DEBUGGING_OPTIONS=NO -
18:32 - Reintroducing search paths in LLDB
settings set target.swift-extra-clang-flags … settings set target.swift-framework-search-paths … settings set target.swift-module-search-paths …
-