- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在开发一个项目(游戏引擎),它有一个包含 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/
假设我在 net.aserve 和 bordeaux-threads 之上构建了一个应用程序。我的包声明可能如下所示: (defpackage :my-package (:use :cl :net
我是一名优秀的程序员,十分优秀!