vs2017 自定义生成规则 错误 MSB3721 命令 ”已退出,返回代码为 1。
错误 MSB3721 命令 ”已退出,返回代码为 1。
解决办法:去掉yasm复选框,改为masm
vs2017 自定义生成规则-编译汇编代码
VC++调用yasm编译汇编代码有三种方法:Custom Build、.rules文件、.targets文件。
1 Custom Build
Custom Build的优点是适用面广,vc6~vc2015都能使用;缺点是修改命令行参数稍显麻烦。
图1.19
Outputs是编译*.asm后的输出文件,连接时会用到此文件。上图的设置为"(IntDir)$(InputName).obj"其中(IntDir)$(InputName).obj"其中(IntDir)是编译时的临时目录,(InputName)是编译.asm文件名,如:编译addn.asm时,(InputName)是编译.asm文件名,如:编译addn.asm时,(InputName)就是add_n。
Commands是vsyasm.exe的命令行,具体如下:
1.12.2 .rules文件
鼠标右键单击项目,弹出菜单中单击【Custom Build Rules...】菜单项
图1.20
弹出如下界面,请单击"Find Existing..."按钮。
图1.21
请载入 yasm.rules文件,如所示:
"D:\dev2\v0\WebForDotNet-v0.3-Source\Externals\vpx-vp8-debug-src-x86-win32mt-vs8-v0.9.2\src\build\x86-msvs\yasm.rules"
下图所示界面,请单击"否"按钮。
图1.23
下图所示界面内,请勾选"Yasm",然后单击"OK"按钮。
图1.24
此时查看项目属性,可以看到配置里多了一项"Yasm Assembler",可以在这里对Yasm的命令行参数进行配置。如下图所示:
Definitions 定义
Include paths 包含路径
Remove Definitions 删除定义
Object file Name 目标文件名
List file name 列表文件名
Pre include file 预包含文件
Pre-Processor 预处理器
Parser 分析器
Execute before 执行之前
Execute after 执行后
Additional Dependencies 附加依赖项
YASMPATH D:\Program\vsyasm-1.3.0-win64\
错误 MSB3721 命令 ”已退出,返回代码为 1。
解决办法:去掉yasm复选框,改为masm
图1.26
1.12.3 .targets文件
yasm -Xvc -f Win32 -g cv8 -I -o Win32\Debug\vpx\%(Filename).obj -rnasm -pnasm
-Xvc 是错误信息显示格式。对于gcc编译器可设置为 -Xgcc 或 -Xgnu。
-f Win32 表明是32位平台,对于64位平台可指定为-f x64
-g cv8 用来生成调试信息,这种调试信息不能被 vc6 识别,所以使用vc6编译.asm文件时,请去除该选项。
-o "(IntDir)"表示将在目录(IntDir)"表示将在目录(IntDir)里生成.obj文件。注意$(IntDir)后面的两个反斜杠一个都不能少。
$(InputPath)表示输入文件,如:add_n.asm、addmul_1.asm……
规则文件(即 RULES 文件)是文件扩展名为 .rules 的 XML 文件。通过该文件,可以定义自定义生成规则,并将其并入 Visual C++ 项目的生成过程中。自定义生成规则与一个或多个文件扩展名相关联。利用自定义生成规则,可以将输入文件传递给工具,进而作为生成过程的一部分生成一个或多个输出文件。
使用“Visual C++ 自定义生成规则文件”对话框可以管理项目中的规则文件。
|
说明: |
|
规则文件遵循与属性表(VSPROPS 文件)相同的属性继承准则。有关更多信息,请参见属性继承。 |
将自定义生成规则并入生成过程中时,还可以指定运行这些生成规则的顺序。有关更多信息,请参见“工具生成顺序”对话框。
“Visual C++ 自定义生成规则文件”对话框
通过此对话框,可以添加、修改或搜索规则文件,这些文件包含 C++ 项目的自定义生成规则。
若要访问此对话框,请在“解决方案资源管理器”中右击项目节点以调出项目上下文菜单,然后选择“自定义生成规则”菜单项。
可用的规则文件
显示可用的规则文件的列表。在“名称”列中,选中要添加到项目中的规则文件。
|
说明: |
|
使用“选项”对话框 ->“项目和解决方案”->“VC++ 项目设置”修改“规则文件搜索路径”选项。 |
在 Visual Studio 旗舰版, Visual Studio 高级专业版 以及 Visual Studio Professional 中,您可以创建和修改自定义规则集 ,以满足与代码分析相关联的特定项目需要。 若要创建自定义规则集,请在规则集编辑器中打开一个或多个标准规则集。 然后,可以添加或移除特定规则,并且可以更改当代码分析确定违反规则时发生的操作。
若要创建新的自定义规则集,请使用新文件名保存它。 自定义规则集会自动分配给项目。
打开规则集编辑器
在规则集编辑器中打开空规则集文件
- 在 Visual Studio 的“文件”菜单上,指向“新建”,然后单击“文件”。
- 在“新建文件”对话框中,单击“已安装的模板”列表中的“常规”,然后选择“代码分析规则集”。
- 随即将显示规则集编辑器。 编辑器列表中没有已选中的规则。
从单个现有规则集创建自定义规则
- 在解决方案资源管理器中,右击项目,然后选择“属性”。
- 在“属性”选项卡中,单击“代码分析”。
- 在“规则集”下拉列表中,执行以下操作之一:
- 选择要自定义的规则集。
- 或 -
- 选择 <浏览> 指定列表外部的现有规则集。
- 单击“打开”以在规则集编辑器中显示规则。
从多个现有规则集创建自定义规则集
- 在解决方案资源管理器中,右击项目,然后选择“属性”。
- 在“属性”选项卡中,单击“代码分析”。
- 从 运行此规则集 中 <选择多个规则集>.
- 在“添加或移除规则集”对话框中,选择要作为新规则集基础的规则集,然后单击“确定”。
- 保存新规则集。
新规则集的名称在“运行此规则集”列表中处于选中状态。 在下一步中可以更改规则集的显示名称。
- (可选)若要更改规则集的显示名称,请在“视图”菜单上单击“属性窗口”。 在“名称”框中键入显示名称。
- 若要在新规则集中添加、移除或修改特定代码分析规则,请单击“打开”。
修改规则集
在规则集编辑器中修改规则集
- 若要更改规则集的显示名称,请在“视图”菜单上单击“属性窗口”。 在“名称”框中输入显示名称。 请注意,显示名称可以与文件名不同。
- 若要将组的所有规则添加到自定义规则集,请选中组的复选框。 若要移除组的所有规则,请清除该复选框。
- 若要将特定规则添加到自定义规则集,请选中该规则的复选框。 若要从规则集内移除规则,请清除该复选框。
- 若要更改在代码分析运行中违反规则时应采取的操作,请单击规则的“操作”字段,然后选择下列值之一:
Warn - 生成警告。
Error - 生成错误。
None - 禁用规则。 此操作相当于从规则集内移除规则。
更改规则集编辑器的显示
请参阅
vs2017 自定义生成规则 错误 MSB3721 命令 ”已退出,返回代码为 1。的更多相关文章
- 错误“AxImp.exe”已退出,代码为 -1163019603【转载及个人看法】
http://blog.csdn.net/duguduchong/article/details/17166123 最近使用vs2010 在重新生成解决方案的时候出现 “AxImp.exe”已退出, ...
- Visual Studio 2013 Ultimate & IIS Express 8.0 错误 [iisexpress.exe”已退出,返回值为 -1073741816 (0xc0000008)] 解决方法
1. 开发环境 Visual Studio 2013 Ultimate IIS 8.0 Express 2. 错误信息 错误提示:iisexpress.exe”已退出,返回值为 -1073741816 ...
- 错误"Lc.exe 已退出,代码 -1 "
今天做项目的时候突然出现编译不通过,错误为Lc.exe已退出,代码为-1.这让我郁闷了至少30分钟,后来上网查了一下,才知道原因所在,我们项目中使用了第三方组件(Infragistics)造成的,至于 ...
- 解决Xamarin 生成时出现 “aapt.exe”已退出,代码为 1。错误问题
项目中添加的资源或项目文件的名称不能包含 空格 横线 特殊符号 或者 Android关键字 等
- VS2012 生成项目报 "Lc.exe已退出,代码为-1" 错误
解决方法:删除项目下Properties文件下的license.licx文件即可.
- 编译.NET项目的时候报错错误“ResGen.exe”已退出,代码为 -1073741701
解决的办法如下: 1.关闭所有Visual Studio: 2.以管理员的身份打开命令提示窗口:(开始-运行-cmd) //有人说要使用vs tools 里面的控制台 亲试无卵用 3. ...
- devexpress 严重性 代码 说明 项目 文件 行 禁止显示状态 错误 “lc.exe”已退出,代码为 -1。
将licensens.licx删除,就能正常运行
- 很详细、很移动的Linux makefile教程:介绍,总述,书写规则,书写命令,使用变量,使用条件推断,使用函数,Make 的运行,隐含规则 使用make更新函数库文件 后序
很详细.很移动的Linux makefile 教程 内容如下: Makefile 介绍 Makefile 总述 书写规则 书写命令 使用变量 使用条件推断 使用函数 make 的运行 隐含规则 使用m ...
- 命令“"xxx.exe" xxx”已退出,代码为 n。这些错误是什么意思?(3 / 123 / 9009)
命令“”xxx.exe” xxx”已退出,代码为 n. 我们在 cmd 中输入常见命令的时候,如果命令输入错误或使用错误,cmd 中会提示错误原因,帮助我们定位并解决问题.然而如果相同的命令放到了 V ...
随机推荐
- 从零开始,学习web前端之HTML5开发
什么是HTML5 HTML5是HTML最新的修订版本,2014年10月由万维网联盟(W3C)完成标准制定.是下一代 HTML 标准. 为什么要学习HTML5 HTML5定义了一系列新元素,如新语义标签 ...
- hdu 4135 Co-prime (素数打表+容斥原理)
题目链接 题意:问从A到B中与N互素的个数. 题解: 利用容斥原理:先求出与n互为素数的个数. 可以先将 n 进行素因子分解,然后用区间 x 除以 素因子,就得到了与 n 的 约数是那个素因子的个数, ...
- BZOJ2654/COGS1764 [2012国家集训队]tree(陈立杰) [生成树,二分]
BZOJ传送门,COGS传送门 tree Description 给你一个无向带权连通图,每条边是黑色或白色.让你求一棵最小权的恰好有need条白色边的生成树. 题目保证有解. Input 第一行V, ...
- oracle 查看16进制
DUMP function is useful for this purpose. SQL> select dump(C1) from test; DUMP(C1)--------------- ...
- 文本转化工具dos2unix
文本转化工具dos2unix 由于历史原因,各个平台使用的文本编码规范不同,导致了同一文本在不同平台中显示不同.例如,Windows和Linux的换行符号不同,会造成多行文本显示混乱.为了解决这个 ...
- [BZOJ3997][TJOI2015]组合数学(Dilworth定理+DP)
题目名字是什么就不能往那方面想. 每个点拆成a[i][j]个,问题变为DAG最小路径覆盖,由Dilworth定理转成最长反链. 使用Dilworth定理的时候要注意那些点之间有边,这里任意一个点和其右 ...
- CodeForces - 965D Single-use Stones
题面在这里! 如果你强行把问题建模,可以发现这是一个裸的增广路,又因为这是区间连边,所以跑一个 点数O(N)边数O(N log N)的线段树优化建边的网络流即可,不知道能不能过23333 但其实这个问 ...
- 【推导】【NTT】hdu6061 RXD and functions(NTT)
题意:给定一个n次多项式f(x)的各项系数,让你求f(x-Σai)的各项系数. http://blog.csdn.net/v5zsq/article/details/76780053 推导才是最关键的 ...
- 【推导】【数学期望】Gym - 101237D - Short Enough Task
按照回文子串的奇偶分类讨论,分别计算其对答案的贡献,然后奇偶分别进行求和. 推导出来,化简一下……发现奇数也好,偶数也好,都可以拆成一个等比数列求和,以及一个可以错位相减的数列求和. 然后用高中数学知 ...
- Activity(活动)生命周期--项目测试
一.新建一个Activitylifetest项目,允许Android Studio帮我们自动创建活动和布局,并且勾选Luancher Activity来将创建的活动设置为主活动. 可以参考: http ...