gpt4 book ai didi

c++ - VS2015 链接器寻找旧的,无处提及的文件

转载 作者:太空宇宙 更新时间:2023-11-04 13:23:31 26 4
gpt4 key购买 nike

我正在开发一个项目(游戏引擎),它有一个包含 11 个项目(VS 项目)的解决方案,其中 10 个是静态库 (.lib),一个是可执行文件 (.exe)。我只在两台计算机上工作——一台在家里,一台在工作,都使用 Visual Studio 2015 Community。在家里的那个工作得很好,但在工作的那个有问题——当我构建解决方案时,链接器总是在寻找“corelib.lib”文件。该文件存在于一段时间之前,但在某些时候我开始在发布和调试之间切换得太频繁,我制定了一个新的约定来减轻编译时间的痛苦 - 现在我的文件被称为:corelib_vc14_dbg.lib 和 corelib_vc14_rls.lib(用于调试并分别释放)。无论我做什么,链接器总是寻找这个文件。我尝试清理解决方案,我尝试完全清理 svn 拷贝,我尝试重新结帐,我尝试将 svn 拷贝移动到另一个位置。我尝试在目录中查找“corelib.lib”(多次,使用 Sublime 和 Notepad++),结果为零。 “.sdf”、“.suo”、“.user”等文件没有版本控制。目标文件、库、可执行文件等也被排除在 svn 之外,因此那里不能有任何缓存值(如果应该有的话)。是什么导致了这个问题? Visual Studio 会在任何地方缓存类似的东西吗?如果是这样 - 为什么我找不到它?

以下是失败项目的依赖项:

Debug:
AdditionalDependencies>openal.lib;opengl32.lib;engine_vc14_dbg.lib;corelib_vc14_dbg.lib;glfw_vc14_dbg.lib;glew_vc14_dbg.lib;gorilla_vc14_dbg.lib;jsoncpp_vc14_dbg.lib;%(AdditionalDependencies)</AdditionalDependencies>

Release
<AdditionalDependencies>openal.lib;opengl32.lib;engine_vc14_rls.lib;corelib_vc14_rls.lib;glfw_vc14_rls.lib;glew_vc14_rls.lib;gorilla_vc14_rls.lib;jsoncpp_vc14_rls.lib;%(AdditionalDependencies)</AdditionalDependencies>

所有 .lib 文件都使用新名称正确导出(例如:“corelib_vc14_dbg.lib”),但链接器仍会查找旧库文件“corelib.lib”

最佳答案

我解决了我的问题。这是我从未预料到的地方——当我从 VS2013 移动到 VS2015 时,一些对旧项目的引用被遗漏了,并导致了这个奇怪的问题。值得庆幸的是,我让我的项目文件夹井井有条,所以我查看了主干中的所有内容以查找“vs2013”​​并发现了一堆事件,手动将它们替换为“vs2015”并且一切正常:)

关于c++ - VS2015 链接器寻找旧的,无处提及的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34152547/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com