你好,提前感谢你的帮助
我是VS 2019的新手,我必须现在开始,因为我的大学需要它。
我的导师给出的步骤:
1.创建新项目-> Windows桌面向导->(默认名称可选)
1.控制台应用程序
1.配置管理器选择x64(是的,它需要是64位)
1.构建依赖项->构建自定义->选择masm
1.添加新的->新项目->名为asm.asm的c++文件
我按照老师给出的步骤一步一步地开始一个新的项目,使用简单的a+b=c,但当试图编译该项目时,VS返回下面的行:
Build started...
1>------ Build started: Project: Project2, Configuration: Debug x64 ------
1>Assembling asm.asm...
1>D:\Visual\MSBuild\Microsoft\VC\v160\BuildCustomizations\masm.targets(70,5): error MSB3721: The command "ml64.exe /c /nologo /Zi /Fo"x64\Debug\asm.obj" /W3 /errorReport:prompt /Taasm.asm" exited with code 1.
1>Done building project "Project2.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
我的项目的.cpp
文件包含:
#include <iostream>
using namespace std;
extern "C" __int64 sum(int a, int b);
int main(int argc, char* argv[])
{
int a = 10;
int b = 20;
int c;
c = sum(a, b);
cout << "Sum = " << c << endl;
system("PAUSE");
return 0;
}
计算a+b=c
的文件程序集文件asm.asm
包含:
.CODE
_DATA SEGMENT
_DATA ENDS
_TEXT SEGMENT
PUBLIC sum
suma PROC
movsxd rax, ecx
movsxd rdx, edx
add rax, rdx
ret
sum ENDP
_TEXT ENDS
END
为什么我会得到一个构建错误,如何在Visual Studio 2019项目中解决这个问题?
1条答案
按热度按时间jei2mxaa1#
你必须做三件事。
1.创建一个单独的
.asm
文件并在其中编写汇编代码。1.右键单击您的解决方案,导航到【构建依赖关系】-【构建自定义设置】,并选中【masm】框。
1.右键单击您的
.asm
文件,进入【属性】-【项目类型】,选择【微软宏汇编器】。现在您可以将汇编代码链接到C/C++代码。