Visual Studio 2005で、
1つのディレクトリの中に、複数個、異なる.cを入れて、
プロジェクトの種類を、Windowsアプリケーション プロジェクトに指定して、
プロジェクトを作り、ビルドをかけたのですが、
リンクの最中に、下記のエラーが出ました。
複数、.cを入れても、コンパイルはかかるとは聞いていたのですが、
どこかに、何らかの指定でも要るのでしょうか?
1>DENOISE.obj : error LNK2005: _main は既に COMP2D.obj で定義されています。
1>fwtest.obj : error LNK2005: _main は既に COMP2D.obj で定義されています。
1>MSVCRTD.lib(crtexew.obj) : error LNK2019: 未解決の外部シンボル _WinMain@16 が
関数 ___tmainCRTStartup で参照されました。
>複数、.cを入れても、コンパイルはかかるとは聞いていたのですが、
コンパイルはできていますよ。
リンクできないだけで。
まあ、今回の場合は…main()がいくつもあるからEXEにした時にどれを使ったらよござんしょ?
ってことです。
そういう場合は
「1つのソリューションに複数のプロジェクト」で対処するべきかと。
# 個別にソリューション作ってもいいですけどね。
例えば…
「Windowsアプリケーション練習」ってソリューションに
「DENOISE」ってプロジェクトと
「fwtest」ってプロジェクトを含める。
みたいな。
『Windowsアプリケーション プロジェクト』なので、デフォルトで必要とされるのは
WinMain()であり、main()ではないですけどね。
そのエラーメッセージが、
>1>MSVCRTD.lib(crtexew.obj) : error LNK2019: 未解決の外部シンボル _WinMain@16 が
>関数 ___tmainCRTStartup で参照されました。
です。
瀬戸っぷさん
ありがとうございます。
言われるようにやってみたら、
うまくいきました。
今後ともよろしくお願いします。