【发布时间】:2022-07-03 01:10:10
【问题描述】:
我已经阅读了 git 的 SASM 存储库和互联网,并且可以找到有关 SASM 将二进制输出存储在何处的任何信息。我已经用 NASM for x64 构建了一个简单的程序集文件,并且在它构建之后。我使用“查找/程序文件”搜索它,它一直说“程序文件:没有这样的文件或目录。我刚开始学习汇编并在 Linux Mint 上安装 SASM。我想试用 SASM,因为它有一个调试器。如果我用 make 构建它,就会创建二进制文件。任何人都可以帮助我理解为什么 SASM 不生成二进制文件?
【问题讨论】:
-
find / programfile告诉 find 递归地列出两个路径,/和programfile。但是第二个在当前目录中不存在。我认为您的意思是运行find/ -name programfile` 来在整个系统上搜索该文件名。 (开始只查看您的主目录可能会更快,find ~ -name programfile) -
我猜它会在与源
.asm相同的目录中生成它,或者在您启动 SASM 的目录中。 -
还是不行。 SASM 在 Windows 上的行为方式也相同。某些原因它不生成二进制文件。至少这样我就可以在 SASM 之外运行它。我想我会坚持使用 make 文件。这是什么鬼???!还是谢谢
-
我从来没有使用过 SASM(只是 emacs 或 vim,取决于心情,加上带有单行或 script to assemble+link 的命令行),但如果它不产生,我会感到惊讶某处的可执行文件。如果它允许您运行程序,您可以编写一个读取终端输入或休眠的程序,然后使用另一个终端查找正在运行的进程的 PID。
ls -l /proc/<PID>/exe会告诉你它从哪里运行。 -
谢谢大家,终于在我正在阅读的教程书中提到要保存可执行文件,您必须单击文件菜单项下的“保存.exe”菜单项哈哈!我不敢相信在构建阶段仍然无法完成.. 感谢所有回复的人!至少我想通了哈哈! :)