2011-01-17 11 views
0

シリアルポートを読み書きするためのシリアルプログラミングを使用し、Ubuntu環境のデータベースに値を格納するプログラムを開発しました。最近、私は、読み込み機能などをフィルタリングするためにboost libを使用する機能をほとんど追加しませんでした。しかし、プログラムを実行すると、15-20分後に、セグメンテーションフォルトが発生しました。 自分のプログラムで定義したログファイルをチェックすると、その中に次の行があります。私はすべてのことについて何の手がかりも持っていません。誰かがそれについて私を導くことができますか?GNU General Public License ERROR?

a copy of the GNU General Public License   along with this 

プログラム。そうでない場合は、 Software Foundation、Inc.、59 Temple Place、Suite 330、Boston、MA "、" NU General Public License
このプログラムとともに、そうでない場合は、 をフリーソフトウェアに書きます。そうでない場合は をフリーソフトウェアに書きます。
Foundation、Inc.、59 Temple Place、 Suite 330、Boston、MA "、" ram;そうでない場合は フリーソフトウェアに書き込む
Foundation、Inc.、59 Temple Place、 Suite 330、Boston、MA "、" eフリー Software Foundation、Inc.、 59 Temple Place、Suite 330、Boston、MA 「012」、「MA」、「MA」、「MA」、「
」、「 」、「 」、「012、 HUB-ARM「)

おかげに関して、 SamPrat。

+3

私はこの質問の一部であることと誤った引用符で囲まれた書式設定が間違っているかどうかわからなくなるまで、この質問を再フォーマットしようとしていました。 –

+0

あなたは、間違ったログ行に基づいてプログラムの何が間違っているか教えてほしいですか? –

+2

あなたはGPLに違反しているようだ; P – leppie

答えて

6

簡単A nswer。あなたのプログラムはsegfaultedです。それは、もはや働いていないことを意味し、ひどく振る舞うことができます。

この場合、(おそらく適切に終了していない)文字列が印刷され始め、プログラムメモリを印刷し続けていました。おそらくあなたは長いGNU GPLライセンステキストを含んでいます。 segfaultedプログラムがこれらの文字列の一部を印刷する可能性は高いです。

メモリ割り当て、文字列などを確認してください。メモリ関連のバグがあります。

+0

valgrindプログラムを使用してそれをトレースします。valgrindパッケージをインストールし、$ valgrind your_programを実行してエラーを確認します。 – lzap

+0

解決策はありがたいIzapです。私は上記のエラーを参照してhavntが、私はvalgrindを実行している場合、mysql_initとmysql_closeはいくつかの問題が見つかりました。助けてくれてありがとうございます。 – samprat

2

私の推測で、

あなたは終端されていない文字列を使用して/印刷されています。あなたがそれを印刷するようになると、それは '/ 0'またはSEGFAULT :)に達するまであらゆる文字を印刷し続けます.GPLのライセンステキストはちょうど正しい場所にあります。

+0

のように見えますが、それは問題になるかもしれません。私はさらに調査してみましょう。ありがとう – samprat

+0

私たちにそれがどのように行くか教えてください – hhafez

関連する問題