【发布时间】:2013-12-18 00:59:04
【问题描述】:
我正在尝试在 C++ 中运行我的简单汇编代码。我只有两个文件“.cpp”文件和“.asm”文件。编译时出现错误(见下文)。如果有人能提供帮助,我将不胜感激...:)
这是我的“main.cpp”文件
#include <iostream>
using namespace std;
extern "C" int GetValueFromASM();
int main(int argc, char *argv[]){
cout<<"value is:"<<GetValueFromASM()<<endl;
cin.get();
return 0;
}
我还有一个简单的“asm.asm”文件
.code
GetValueFromASM proc
mov rax,3254
ret
GetValueFromASM endp
end
尝试构建时出现此错误:
1>main.obj : error LNK2019: unresolved external symbol GetValueFromASM referenced in
function main
1>..\visual studio 2012\Projects\AllAssembly\x64\Debug\AllAssembly.exe : fatal error LNK1120: 1 unresolved externals
我尝试转到 PROPERTIES->LINKS->ADDITIONAL LIBRARY DIRECTORIES 并更改路径 但它没有用。
我也试过去 LINKER->SYSTEM->SUBSYSTEM 并选择 "Windows (/SUBSYSTEM:WINDOWS)" 或 “控制台(/SUBSYSTEM:CONSOLE)”,但没有一个工作。谁能帮忙!!..非常感谢
【问题讨论】:
标签: c++ visual-studio-2012 assembly x86-64