別のマシンでコンパイルされたiOSアプリケーションにdylibのフレームワークがあります。 私は私のマシン上でソースをチェックアウトして使用してソースコードのパスをマップするlldb
を指示してみました:Xcodeのバイナリdylibにソースを添付する
settings set target.source-map /source/code/path/in/dylib/prefix /source/code/path/on/my/machine/prefix
を無駄に、まだアセンブリを見て。
注1:dylibは、Xcodeの同じバージョンのC++コードからコンパイルされています。
注2:nm -pa /path/to/dylib
を使用して、ファイルパスがデバッグ情報に埋め込まれているかどうかを判断しました。何らかの理由でlldbが再生されません。 https://medium.com/@maxraskin/background-1b4b6a9c65be
詳しい返信をいただき、ありがとうございました。私は本当にdSYMが不足していました。私は 'add-dsym'を使用してdSYMパスを指摘した後、' image lookup -vn 'を使ってシンボルソースコードパスを取得し、' settings set target.source-map/path/prefix/i/got/from/lookup/path/prefix/on/my/machine'と入力します。 –
これを自動化するために、http://lldb.llvm.org/symbols.htmlの指示を使用します。 –
btw - dylibのデバッグビルドで、dSYMが必要ですか、またはdwarfファイル内に埋め込まれた同じデータですか? –