私はシェルスクリプトでファイルを実行し、そのファイルに出力を書き込もうとしています。Prolog Sicstusをシェルファイルで実行しています
スクリプトは非常に単純です:
/usr/local/sicstus4.1.1/bin/sicstusが--goal実行-l "runh( '例/ calls_matlab.pl'、S)、停止を。" > "/ユーザ/アンドリュー/ Dropboxの/ IP /モデリングフェーズ/ rules.txt"
私はこれを実行したときしかし、それは次のエラーで失敗します。 sicstus(24883,0x7fff70916ca0)malloc関数:オブジェクトの*エラー0x10082b408:解放されたオブジェクトのチェックサムが正しくありません。オブジェクトは解放された後におそらく変更されました。 *は、私がゴールから「停止」を削除した場合、一方
をデバッグするmalloc_error_breakにブレークポイントを設定罰金、すべての、しかしSicstusがまだ実行されています。
私のシェルスクリプトで上記のエラーが発生することなく、sicstusを終了する方法はありますか?
お時間をいただきありがとうございます。
アンドレアスあなたのスクリプトを実行し、/dev/null
で入力パイプをリダイレクトする場合、どのよう
これはSICStus-Matlabのブリッジのバグの匂い。それを書いた人に苦情を言いなさい。 –
matlabで生成されたファイルは完全に有効です。実際に私がプロローグで実行している場合(シェルスクリプトがなければ、すべて問題ありません)エラーを引き起こす原因は、目標を実行した直後の停止です。私は、テキストファイルへの出力を終了する前に停止しようとしていると思われます。私は代替ソリューションを考えることができません:( – kkudi