:“/MT”和“/clr:pure”命令行选项不兼容


VS2008下的工程文件,其中C++工程为启动项,调用了C#的代码,也就是在项目的属性设置中,有使用clr。
后来不知道设置了什么属性,就出现了下面的错误:
错误的结果2,从C:\Program Files(x86)\Microsoft Visual Studio 8\VC\bin\cl.exe 返回

输出界面显示如下:

1>------ 已启动生成: 项目: a, 配置: Release Win32 ------
1>正在编译...
1>cl: 命令行 error D8016 :“/MT”和“/clr:pure”命令行选项不兼容
1>项目 : error PRJ0002 : 错误的结果 2 (从“J:\Microsoft Visual Studio 9.0\VC\bin\cl.exe”返回)。
1>生成日志保存在“file://j:\vc++\a\a\Release\BuildLog.htm”
1>a - 1 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

最终采用如下解决办法,在工程属性中修改如下:

  1. project properties->C/C++->Code Generation->Runtime Library
    选择:Multi-threaded DLL (/MD)
    2、在stdAfx.h中加入:

define _AFXDLL (该宏的意思是使用MFC动态链接库)

当时没有看运行后的输出界面。从错误提示确实很难找到解决办法,后来打开输出界面,按照“:“/MT”和“/clr:pure”命令行选项不兼容”才找到解决办法


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM