問題タブ [lldb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - シンボルなしでデバイス上の iOS アプリケーションをデバッグする
実際のデバイスで ios アプリケーションの起動をデバッグする必要があります...起動とは、OS が制御をアプリに渡すときに実行される最初の命令を意味します。「メイン」ではありません。また、このアプリケーションにはシンボルがありません (つまり、デバッグ情報はまだ利用できません)。CPU 命令レベルでデバッグする必要があるかどうかは気にしません。私はそれを行う方法を知っています (30 年以上それを行ってきました)。コントロールがアプリに転送されようとしているときにデバッガーを停止したい。Attach|by Name コマンドを使用して実行すると、「Finished running」とだけ表示されます。
ああ、このアプリケーションは XCode でビルドされていませんでした。ただし、これは私が作成、署名、プロビジョニングし、デバイスに移動したアプリケーションです。コンソール出力が表示されるので、アプリケーションは実行されます。私が誰かのアプリケーションをデバッグしようとしているハッカーだと思っている場合に備えて。
背の高い注文はどうですか?誰もこれに答えられないに違いない... XCodeで構築されたプロジェクトでこれを行う方法に関する情報を見つけることができませんでした。Appleの大君主によってそれが単に不可能または「許可」されているのだろうか?
スタックオーバーフローの神々、あなたは何と言いますか?
更新: 何かを明確にする必要があります。このアプリケーションは、市販またはオープンソースのツールを使用して構築されていません。コンパイラ、フレームワーク、および IDE を作成するツール ベンダーと協力しています。IOW、あなたはこのツールを手に入れることができません... まだ。新しいツール チェーンをブートストラップするプロセスでは、非常に低レベルの生のデバッグに定期的に頼らなければなりません。特に、ツールによって生成されたコードにバグがある場合。
xcode - スレッドを中断不可能な macOS にする
Mac OS でマルチスレッド アプリケーションを開発しています。次の問題に直面しています: xcode-cocoa アプリケーションでデバッグしようとすると (注: コンソール アプリケーションには同じ問題はありません)、スレッドは次の呼び出しでエラーを返します: kevent()、semaphore_wait() 、EINTR (kevent の場合) および KERN_ABORTED (semaphore_* の場合) を指定した semaphore_timedwait()。これはlldbの作業によるものだと思います。
問題は、このようなイベントを受け取った後にクラッシュするため、アプリケーションをデバッグできないことです。私がそれらの処理を行う場合(同じ機能をリコールするだけ)、アプリケーションは非常に奇妙に動作します。とにかく、新しい timedwait() を正しくするために timedwait() に行く前に時間を「記憶」する必要があるため、semaphore_timedwait() が中断するような状況を適切に処理することはできません (できますが、非常に醜いです)。
したがって、私の問題の解決策は、現在のスレッドの「中断」を無効にできる場合です-別のスレッド\プロセスから中断される機能であり、lldbが何らかのシグナルを送信した場合、関数は返されません。mac osで可能ですか?
debugging - GDB から LLDB へのアップグレードを何度も求められるのはなぜですか?
はい、[変更の実行] をクリックします。明らかに、最終的にはうまくいくと思いました。
その問題は、何度も何度も警告として表示されます。私はそれに同意しました。それで、それは変更されるべきであり、すべての問題は正しく修正されるべきですか?2 つまたは 3 つ次にコンパイルすると、同じ警告が再び表示され、同じことを再度尋ねられます。
debugging - LLDB のクイック リファレンス?
私は、GDB の 1 ページおよび 2 ページのクイック リファレンス「カード」に精通しており、非常に便利であることがわかりました。
プロジェクトで LLDB を使用するようになったので、そのツールに相当するものを見つけたいと思っていますが、思ったほど早く見つけることができませんでした。
存在しますか?
iphone - XCode 4.3.2 で「GDB から LLDB へのデバッガーのアップグレード」警告を無効にすることはできますか?
Apple 向けの LLDB デバッガーのベータ テストはしたくありません。デバッガーをアップグレードするように XCode にしつこく言われるのをやめるにはどうすればよいですか? ビルドするたびに警告の感嘆符が表示されるのはかなりイライラします。
objective-c - デバッガーがLLDBに設定されている場合、Xcode 4は(アプリ名)にアタッチするとハングします
シミュレーターでアプリを実行すると、XcodeがAttaching to(アプリ名)でハングしますが、これはデバッガーがLLDBに設定されている場合にのみ発生します。デバッガーがGDBに設定されている場合([製品]->[スキームの編集]->[実行]->[デバッガー])、アプリは正常に実行されます。
objective-c - lldb:呼び出し関数を取得する方法は?
コマンドから選択したアイテムを取得できるかどうか疑問に思っていbt
ます。たとえば、特定の関数の呼び出し関数を見つける場合。アイデアは基本的に、問題の関数にノンストップブレークポイントを追加してから、コールスタック、たとえば呼び出し関数、おそらくその呼び出し関数も出力することです。最終的に、これはおそらくコマンドの結果をフィルタリングすることになりbt
ます。間にあるフレームワークとランタイム メソッドを除外するには、フィルタリングが必要です。
xcode - LLDBで浮動小数点値を小数で表示するにはどうすればよいですか
gdb では、print コマンドを使用して浮動小数点変数または double 変数を表示でき、小数点以下の桁数がいくつかある値を取得できます。LLDB の同等のコマンドである expr は、値を丸めたり切り捨てたりして、整数部分のみを表示するようです。LLDB のフォーマット文字列のドキュメントは、少しわかりにくいものです。倍精度または単精度の浮動小数点ローカル変数を小数部分も含めて表示するにはどうすればよいですか?
foo = 3.1415926 の場合、
式 foo
ディスプレイ
フー=3
あまり役に立ちません。
ios - UITabBarController -shouldAutorotateToInterfaceOrientation:警告
lldbから次の警告が表示されます。
ビューコントローラは、すべてのインターフェイス方向に対して-shouldAutorotateToInterfaceOrientation:からNOを返しました。少なくとも1つの方向をサポートする必要があります。
これは標準のUITabBarControllerであり、サブクラスではなく、カテゴリはありません。なぜこの警告が表示されるのですか?
ios - lldbで文字列を作成できないのはなぜですか?
具体的には、なぜこれが機能しないのですか?
NSDataのダンプに関する質問は他にもありますが、これがより良い解決策になると思いました。うまくいかなかったのでびっくりしました。理由を理解しようとしているだけです。