Linuxで大学向けのCプロジェクトを作成しています。これは、基本的に2台のコンピューター間のファイル転送用のプロトコルです。プログラムは正常に動作し、問題なく多くのファイルを送信しますが、テストしたファイルが 1 つまたは 2 つあり、プログラムがレポートなしでクラッシュするだけで、問題をデバッグする方法がわかりません。どんな助けでも大歓迎です。
また、両方のファイル (アプリケーションとプロトコル) に 1.5k 行以上のコードがあるため、コードを投稿する必要があるかどうかもわかりません。
Linuxで大学向けのCプロジェクトを作成しています。これは、基本的に2台のコンピューター間のファイル転送用のプロトコルです。プログラムは正常に動作し、問題なく多くのファイルを送信しますが、テストしたファイルが 1 つまたは 2 つあり、プログラムがレポートなしでクラッシュするだけで、問題をデバッグする方法がわかりません。どんな助けでも大歓迎です。
また、両方のファイル (アプリケーションとプロトコル) に 1.5k 行以上のコードがあるため、コードを投稿する必要があるかどうかもわかりません。
ほとんどの Linux ディストリビューションでは、デフォルトでコア ダンプが無効になっています (これは、システム リソースの制限から確認できます。「ulimit -c」が無効になっている場合はゼロになります)。同じことを有効にするには、「ulimi -c unlimited」を使用します。
追加するために、最近のディストリビューションのような Ubuntu では、"/proc/sys/kernel/core_pattern" で指定された Ubuntu 開発者にレポート/コア ファイルを送信するプログラムをカスタマイズしています。さらにデバッグするには、開発目的で変更してください。
問題をより明確にするために、「valgrind」または「gdb live debugging」を試すこともできます。