一般に、処理コアファイルで使用セグメンテーション障害(コアダンプ)。

最近、どのような共通のコアドキュメント処理だけでなく、いくつかの一般的に使用されるコマンドを記録するために、常に、「セグメンテーションフォールトを(コアダンプ)」デバッグカメラをやって。
1)まず、操作ミスは、遭遇した(コアダンプ)ミス
2)を開き、コアファイル命令
3)を再度実行し、間違ったプログラム
4)GDB命令と実行コア文書、トラブルシューティングエラー
の詳細な手順は以下の通りであります:
1.実行プログラムは、私のエラーで表示される
ここに画像を挿入説明コアファイルを生成した操作コマンドに関連したスイッチ上の2ターン、およびサイズを設定します。
スイッチは、コアファイル(一般的に開いていないを生成するためにオンになっている場合1)をチェック)

ulimit -a

ここに画像を挿入説明
、は説明オープン最初の行コアファイルサイズ= 0が存在しない、我々はスイッチを開くために必要とコアファイルのサイズを設定します。

ulimit -c

上記の操作は、一般的にダイレクト出力命令0、いかなる命令またはオープンは、私たちは、コアファイルのサイズを設定するために戻って値を追加する必要がありません

ulimit -c  unlimited

限定することなく提供された値の後に、時々小さすぎる、ないコアファイルを設定します。
2)通常の状況下でコアファイルを生成したアドレスコアファイルは設定せずに、ファイル・フォルダの下にプログラムを実行することです。
時には回コアファイルの多くを生産し、古いファイルを新しいコアを上書きしたくない、次のように、我々は、保存コアファイルに拡張子を追加することができます。
その上で、あなたの指揮の下で追加購入

 echo "1" > /proc/sys/kernel/core_uses_pid

私は時々、生成されたコアファイルのアドレスを見つけることができないので、時々コアファイルを見つけることができないとき、あなたはコアファイルをしようとするアドレスを指定することができ、次のようにコマンドを変更します。

echo "/corefile/core-%e-%p-%t" > /proc/sys/kernel/core_pattern

これは、コアファイルのファイルに生成されます。

3.もう一度プログラムを実行し、次のようにコアファイルを実行するためのプログラムのディレクトリにあります。
ここに画像を挿入説明
これは私の生成されたコアファイルである
4コアファイルを表示するには、いくつかの方法がありますが、私は私が使用しているものと述べました。
次のように私のコードは次のとおりです。

gdb ./darknet core-darknet-2228-1558761667

gdbの<プログラム名> <コアファイル名>
ファイル名を自動補完することができない、我々はそれに自分自身をコピーする必要があり
ここに画像を挿入説明
、その後、彼の問題があった場所を見ることができる、と私はまだ、再び、フォローアップのレコードを特定の表示方法を学んでいます。

おすすめ

転載: blog.csdn.net/weixin_42535742/article/details/90545937