程序集链接:致命错误L1093:找不到目标文件

问题描述 投票:0回答:3

我想在Visual Studio 2010中编写16位8086汇编代码 但给了我错误: 代码:

.MODEL small
.STACK 100h
.data
 message BYTE "Hello, world!","$"
.code
_start:
mov ah,9
lea dx,message ; addr of buffer
int 21h
END _start

输出给了我这个错误:

Link:  
Microsoft (R) Segmented Executable Linker  Version 5.60.339 Dec  5 1994
Copyright (C) Microsoft Corp 1984-1993.  All rights reserved.  
warning L4017: /ERRORREPORT : unrecognized option name; option ignored
LINK : fatal error L1093: Files\Microsoft Visual Studio 10.0\VC\bin\link.exe : 
object file not found
Build FAILED.

我该怎么办?

visual-studio-2010 assembly x86 masm
3个回答
1
投票

真的不知道问题出在哪里。 我从来没有用过VS来进行汇编。 有一些很棒的汇编 IDE 比 VS IMHO 更好 - RadASM、WinASM。 此代码:

.MODEL small
.STACK 100h
.data
 message BYTE "Hello, world!","$"
.code
_start:
mov ah,9
lea dx,message ; addr of buffer
int 21h
END _start

使用此批处理文件可以很好地组装和链接:

@ECHO ON
del dosdisplay.exe
ML.EXE /DMASM /DDOS /Zm /c /nologo /I"d:\masm32\Include" "dosdisplay.asm"
link16.exe /NOLOGO "dosdisplay.obj" "",,,,,""

我使用的汇编器和链接器版本:

Microsoft (R) Macro Assembler Version 6.15.8803

Microsoft (R) Segmented Executable Linker Version 5.60.339 Dec 5 1994

什么是链接? 这不是32位版本吗? 或者16位的名字是一样的吗? 不确定,多年来一直在 DOS 应用程序中使用这 2 个文件/版本。


0
投票

非常尊重帖子上的所有其他信息,我不得不说,将

.asm
文件名(扩展名不包括在计数中)的长度限制为
<=
8 个字符(+ 点 + 3 个字母扩展名) ,问题解决了。


-1
投票

出现这个问题:

1.由于.asm文件名太长。缩短您的文件名并获得您想要的结果。

2.由于链接文件时路径错误。

© www.soinside.com 2019 - 2024. All rights reserved.