UNIX環境で開発したあるプログラムを、UNIX上でコンパイルして実行すると正常に動作するのですが
windows上でコンパイルして動かすとなぜか途中で強制終了されてしまいます。
コンパイラはどちらもgccで、コンパイル自体はwindowsでもエラー無く通過します。

一応デバッグは試みたのですが、なにしろコンパイルは通ってしまうので原因がよくわかりません。
プログラムが停止するのは動的に割り当てたメモリのアドレスを引き渡す操作をするところなので、
そこでなんらかのエラーが発生しているような気もします。
原因、及び改善策としてはどのようなものが考えられるでしょうか。