![]() |
1
24
此问题是由Visual Studio 2008中新的托管增量生成功能引起的。正如您所看到的,元数据确实发生了变化,但并不是以管理增量构建特性认为有意义的方式。但是,如果强制重新编译其中一个cpp文件,它会获取新的元数据,将其嵌入到obj中,然后链接器会看到冲突。 有两种方法可以解决这个问题。一种简单的方法,从 demoncodemonkey's answer below 在引用的程序集元数据中指定显式版本号,以指示编译器引用的程序集实际上处于同一版本:
避免此问题的另一种方法是禁用该功能。我们可以不必要地重新编译一些cpp文件,但这比链接器失败要好。 在“项目属性”中的“配置属性”下,将“启用托管增量生成”设置为“否”。 |
![]() |
2
11
微软回复了我的Connect帖子,提供了一个更好的解决方法:
这对我很有效,显然这比禁用该功能更好。
|
![]() |
3
1
在xxx.cpp和xxx2.cpp中尝试此操作:
|
|
irio lavagno · 应用程序和插件之间的库不匹配 1 年前 |
![]() |
Will · 嵌入链接器脚本-是否正确放置“堆栈”和“堆”区域? 6 年前 |
![]() |
Leo Brown · Eclipse/MinGW不会链接库 6 年前 |
![]() |
Som · 使用cmsis库中的fft例程时,引用未定义 6 年前 |
![]() |
Felix · 将仅标头库包含到多个文件中会产生链接器错误 6 年前 |
![]() |
FeelTheBurns · 未调用RISCV全局对象构造函数 7 年前 |