Mit dem folgenden Setup ( gist ):
Package.swift:
%Vor%Makefile:
%Vor%main.swift:
%Vor% Nachdem ich eine ausführbare Datei mit make
kompiliert und die ausführbare Datei in einem Debugger gestartet habe, kann ich die Werte von Variablen nicht ausgeben:
Wenn ich die import LLVM_C.Core
-Zeile auskommentiere, funktioniert alles einwandfrei.
Das hindert mich daran, mein Projekt zu debuggen und Fortschritte zu machen. Wie kann ich das beheben?
Das Durchsuchen des Webs nach diesem Problem führt nur zu "es ist ein lldb-Fehler".
Der einzige Weg, den ich zum Debuggen gefunden habe, ist das Debuggen von Tests. Aber AFAIK kann nicht Tests mit eigenen main.swift
Skript ausführen. Dies ergibt multiple definition of 'main'
.
Folgen Sie einfach den Anweisungen hier Ссылка , um die benötigte Dateihierarchie für das Paket mit Tests zu erstellen ( mit swift package init
oder manuell), schreiben Sie einige Tests, führen Sie swift test
und schließlich lldb .build/debug/fooPackageTests.xctest
aus ( <binary name>PackageTests.xctest
ist eine Binärdatei zum Ausführen von Tests). Ich nehme an, dass es anders als in einer gewöhnlichen Binärdatei kompiliert wird. Zumindest hat das in meinem Fall funktioniert:)
Viel Glück beim Debuggen! :)