何らかの理由で、gccを使用してCファイルをコンパイルしてから、Visual C++2008プロジェクトにリンクする必要があります。
(私は現在の最新のgccバージョン:cygwin gcc 4.3.4 20090804を使用しました。)
ただし、問題が1つあります。gccは常に_allocaを使用して大きな配列を割り当てます。
また、VCリンカーはシンボル__allocaを解決できません。
例えば、
int func()
{
int big[10240];
....
}
このコードは、_alloca関数を明示的に呼び出さなかったにもかかわらず、_alloca依存関係を作成します。
(配列サイズが重要です。10240-> 128を変更した場合、すべて問題ありません)
gccオプション-fno-builtin-allocaまたは-fno-builtinを試しましたが、うまくいきませんでした。
gccに_allocaを使用しないようにすることは可能ですか?(またはしきい値を調整しますか?)