現在、VEINSライブラリとシミュレーション パッケージを使用していくつかの実験を行っています。これらは実行時間が非常に長いため、大学のクラスター サーバー (KITE 2.0/RHEL6.6/Lustre 2.5.29.ddnpf3) を使用しようとしていますが、いくつかの異なる実行時のバグに遭遇しました。私のローカルマシン(Fedora 23)で完全に正常に動作する同じコード。この問題を簡単にデバッグする方法を探しています。原因は別のバージョン、またはリモートで変更できない他のシステム レベル ライブラリのどこかにあると思われgcc
ます (しかし、よくわかりません)。OMNeT++ のバージョンは同じであると確信しています。VEINS ライブラリは私が提供し、ローカルでもリモートでも同じです。
私が遭遇した問題の例はここで議論されており、最終的にこのように修正しました(私が知る限り、両方のバージョンは同じセマンティクスを持っています... DimensionSet
extendsstd::set
でありDimensionSet::timeFreqDomain
、修正のようにstatic const
初期化(Dimension::time, Dimension::frequency)
されています)。
原因を探す良いアプローチは何ですか?これらのマシン間で「クロスコンパイル」する簡単な方法、または原因を探すためにバイナリを比較する方法はありますか? このような問題に対処するための一般的な方法はどこで探せばよいでしょうか?