这是一个问题,一直困扰着我当前的项目,我还没有完全弄清楚。我正在一个团队中制作一个游戏,一直在我们的FMOD实现上工作的成员在他的计算机上安装了FMOD。当他在他的系统上运行项目时,它完全正常。但是,当我尝试在我的机器上运行时,我会不断获得LNK1181。我已经尝试在我的VS2012中设置我的包含和库文件夹,以便它引用包含所有.h,.hpp,.lib和.dll文件的文件夹,但我仍然得到1181.此外,我已经多次清洗和重建解决方案并且它什么也没做。我也尝试使用#pragma comment(lib, "FMOD/fmodex_vc.lib")
,但它没有帮助。这是链接器的输出:
1>LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/LTCG' specification
1>
1> Starting pass 1
1> Processed /DEFAULTLIB:FMOD/fmodex_vc.lib
1> Processed /DEFAULTLIB:MSVCRTD
1> Processed /DEFAULTLIB:OLDNAMES
1>Audio.obj : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:LBR' specification
1> Processed /DEFAULTLIB:uuid.lib
1> Processed /DEFAULTLIB:msvcprtd
1>LINK : fatal error LNK1181: cannot open input file '..\..\..\..\..\Program Files (x86)\FMOD SoundSystem\FMOD Programmers API Windows\api\lib\fmodex_vc.lib'
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========
非常感谢任何帮助!
答案 0 :(得分:0)
您需要在Visual Studio的链接器设置中添加fmodex_vc.lib文件。
比较您的设置,VS版本,FMOD版本,Platfrom SDK等等。
删除lib引用并重建。在项目目录中创建一个目录并在那里添加lib文件,然后从那里引用它。
确保使用相同的FMOD lib文件。