鱼C论坛

 找回密码
 立即注册
查看: 54|回复: 3

为何不生成中间文件

[复制链接]
发表于 前天 15:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我在DOSBOX中用命令masm编译asm文件时,为何不生成中间文件,比如LST和CRF文件。
例如: masm ptest(后面没有分号;)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 前天 15:22 | 显示全部楼层
MASM 编译时为何不生成中间文件(LST、CRF)?

在 DOSBox 中使用 masm ptest 命令编译汇编文件时,如果没有生成 LST(列表文件)和 CRF(交叉引用文件),可能是以下原因之一:

  • 命令格式不完整:MASM 需要你在命令行中明确指定是否生成这些文件。比如在输入文件名后按回车,MASM 会提示你输入 LST 文件名和 CRF 文件名。如果你直接按回车跳过,它就不会生成。
  • 没有使用完整的命令行参数:你可以使用如下命令强制生成 LST 文件:
    masm ptest.lst;
  • 分号的作用:在 DOS 下,分号 ; 表示“回车”,如果你在命令中加上分号,MASM 会自动跳过后续提示,默认不生成 LST 和 CRF 文件。
  • MASM 版本差异:不同版本的 MASM 行为略有不同,有些版本默认不生成中间文件,除非你显式指定。


建议做法:  
在 DOSBox 中运行 MASM 时,使用如下命令:
masm ptest;

然后在提示输入 LST 文件名时,输入 ptest.lst,在 CRF 文件名提示时输入 ptest.crf,这样就能生成中间文件了。

如果你希望自动生成这些文件,也可以写一个批处理脚本来简化操作。需要的话我可以帮你写一个。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 前天 15:30 | 显示全部楼层
用你提供的强制生成方法也不行,估计是你说的版本问题吧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 前天 15:52 | 显示全部楼层
使用这样的格式可以生成:masm ptest.asm,ptest.lst,ptest.crf
但是ptest.lst乱码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-3 20:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表