找到 Putty 中文版程序错误原因

很哭笑不得的错误原因。
半年前就有人报告了切换到“响铃”设置时会出现程序错误。
而我一再询问相关细节和试图重现这个错误都不得而知。
后来从 putty 英文原版可以正常运行,猜测到可能是我使用的编译器有问题。
因为我之前常用的编译器是 lcc-win32,不是很常见的一个选择。
结果,使用 ReactOS(Wine) 的 wrc 解决 windres 的中文问题后,换用 MinGW 编译。
反馈没有问题,但还是没有找到问题之根源。
今天再次接到错误报告,感谢这位朋友提到 drwtsn32,然后马上要他把 drwtsn32 的出错日志发过来。
一看,居然是不可思议的“c000001d(非法指令)”,出错指令是 cvttsd2si。
dump 自己的版本,确定指令位置是否相符,然后在自己机器上运行,没问题。
于是继续询问对方 CPU 型号,AMD athlon XP 2000+,怀疑是 p6 指令兼容问题。
因为我记得,官方提供的 makefile.lcc 上面有 -p6 选项。。。
等待以前报告的再次反馈验证,如果确定,就用标准 MinGW 编译后再发布一个。
(我现在还正在编译 i686-pc-mingw32 的 gcc,呵呵。)

发表评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d 博主赞过: