アプリケーションを MacOS X に移植していますが、元の開発者のビルド システムは NMAKE を使用しており、理想的には、新しいものに切り替える代わりにそれを維持したいと考えています。
wine (MacPorts を使用してビルド) を使用して OSX で NMAKE を実行することができ、ビルド ファイルに Objective C のサポートを追加し、Unix リンクの PE ラッパー 'run.exe' を作成しました。オンラインのさまざまな場所で、wine から逃れて Unix に戻る手段として説明されているように、gcc や ld などに変換します。
ただし、いくつかの特定の問題があります。それらはポートに取り掛かることができるほどマイナーですが、タイミングのために、ビルドを数回実行する必要があることを意味します.
基本的に、wine.exe がシェルを呼び出して gcc を呼び出すと、子プロセス間のリンクが壊れているように見えます。gcc と ld は、生成された子から終了コードを取得できないため、失敗した場合でもエラー コードを返すことはありません。ar は実際には、その子が見つからないことを出力してすぐに戻るため、ld がまだまとめられているライブラリにオブジェクト ファイルをリンクしようとすると問題が発生します。
OSXまたは他の場所で、他の誰かが同様のことを試して同じ問題を見ましたか? 明らかな解決策はありますか?