私は 3 つのプロジェクトで C++ ソリューションを継承しました。1 つは .DLL にコンパイルし、もう 2 つは .EXE にコンパイルします。DLL はそれ自体で問題なくビルドされますが、他の 2 つは、ビルド時に約 65 個の LNK2005 エラーを生成します。その大部分は、以下のログに示すように、同じ .obj ファイルを参照しています。
Linking...
Function.obj : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:ICF' specification
Function.obj : error LNK2005: _ReadLocalRegister already defined in Function.obj
Function.obj : error LNK2005: _getSource already defined in Function.obj
Function.obj : error LNK2005: _SendLogEvent already defined in Function.obj
Function.obj : error LNK2005: _DebugMsg already defined in Function.obj
Function.obj : error LNK2005: _MyInformationMsg already defined in Function.obj
MyNTService.obj : error LNK2005: "public: __thiscall CMyNTService::CMyNTService(void)" (??0CMyNTService@@QAE@XZ) already defined in MyNTService.obj
MyNTService.obj : error LNK2005: "public: virtual void __thiscall CMyNTService::OnStop(void)" (?OnStop@CMyNTService@@UAEXXZ) already defined in MyNTService.obj
MyNTService.obj : error LNK2005: "public: void __thiscall CMyNTService::SaveStatus(void)" (?SaveStatus@CMyNTService@@QAEXXZ) already defined in MyNTService.obj
……続きます!
私は C# コーダーであり、C++ の基本的な知識しか持っていないので、これで迷ってしまいます。このソリューションは、VS2008 で C++ ソリューションとして再構築しようとしている 15 年前の C ソリューションです。私はそれを一度ビルドできましたが、何も変わっていませんが、それ以来、いくつかの構成設定が変更されている可能性があります。
私が見始めることができるアイデアを持っている人はいますか...?
どうもありがとう!