vs2005 编译连接问题。 MDD 和 MTD 链接的bug。
时间:2011-12-21
来源:互联网
A工程是Use of MFC: Use MfC in a Shared Dll ,Runtime Library : MDD
B工程是Use of MFC: Use MfC in a Static Library,Runtime Library : MTD
编译完成后,链接不过。报一下错误。
error LNK2005 *** already defined ****
把B工程改成和A工程一样的配置,可以完成编译。大家不要再提这个解决办法。
有没有保持现在A,B的工程设置,使其能链接过?
请大家指点!
作者: changyang208 发布时间: 2011-12-21
其实跟修改为MTD区别不大。
还是修改为MTD保险。
作者: akirya 发布时间: 2011-12-21
作者: xunxun1982 发布时间: 2011-12-21
我在A工程的Linker->Input->Ignore specific Library 中加入 libcpmtd.lib libcmtd.lib 来忽略 MTD 对应的MFC 相关lib库。
从网上查的资料是 MTD 对应的MFC 的lib库是 libcpmtd.lib libcmtd.lib。
可是还是编译不过。我是哪里填写的有问题吗?
作者: changyang208 发布时间: 2011-12-21
作者: changyang208 发布时间: 2011-12-21
作者: zhao4zhong1 发布时间: 2011-12-21
回复1楼:
我在A工程的Linker->Input->Ignore specific Library 中加入 libcpmtd.lib libcmtd.lib 来忽略 MTD 对应的MFC 相关lib库。
从网上查的资料是 MTD 对应的MFC 的lib库是 libcpmtd.lib libcmtd.lib。
可是还是编译不过。我是哪里填写的有问题吗?
……
你的忽略A工程动态链接mfc的库。
B工程已经把mfc的库链接到静态库中了,你只能忽略A动态链接的库,让A工程使用B中已经链接进来的。
作者: akirya 发布时间: 2011-12-21
引用 3 楼 changyang208 的回复:
回复1楼:
我在A工程的Linker->Input->Ignore specific Library 中加入 libcpmtd.lib libcmtd.lib 来忽略 MTD 对应的MFC 相关lib库。
从网上查的资料是 MTD 对应的MFC 的lib库是 libcpmtd.lib libcmtd.lib。
可是还是编译不过。我是哪里……
能不能忽略 B工程中的 静态链接库,让B用A的工程中动态的链接库?
十分感谢你的答复。谢谢!!
作者: changyang208 发布时间: 2011-12-21
引用 6 楼 akirya 的回复:
引用 3 楼 changyang208 的回复:
回复1楼:
我在A工程的Linker->Input->Ignore specific Library 中加入 libcpmtd.lib libcmtd.lib 来忽略 MTD 对应的MFC 相关lib库。
从网上查的资料是 MTD 对应的MFC 的lib库是 libcpmtd.lib libcmt……
不能,编译的时候已经和B是一个整体了,要么全忽略,要么全用。
还没发现有啥编译选项能忽略 静态库中的指定符号。
作者: akirya 发布时间: 2011-12-21
A 是exe B lib库 C 是exe D 是lib库
A工程是Use of MFC: Use MfC in a Shared Dll ,Runtime Library : MDD
B工程是Use of MFC: Use MfC in a Static Library,Runtime Library : MTD
C工程是Use of MFC: Use MfC in a Static Library,Runtime Library : MTD
D工程是Use of MFC: Use Standard Windows Library, Runtime Library : MDD
A 工程依赖 D B lib库。 C工程依赖 B lib库。
刚才的办法让A使用 B 静态库链接。导致 D lib库链接不过。
有没有更好的办法结局?
我看vs编辑器里面有一个 RunTime Library 有一个选项是 inherit from parent or project defaults. 这个选项怎么使用?
十分感谢你的答复!谢谢!
作者: changyang208 发布时间: 2011-12-21
静态库的编译选项和exe的一致。
作者: akirya 发布时间: 2011-12-21
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28