在 Windows 中链接 *.o 文件

发布于 2024-07-18 04:10:46 字数 128 浏览 6 评论 0原文

当我在 Windows 上使用 MinGW 将 .o 文件与 LD 链接器链接时,它会给出错误“file.o:文件无法识别:文件格式无法识别”。 我尝试用 cygwin instread 来做到这一点,但同样的事情发生了。 有什么建议么?

When I'm linking .o files with the LD linker using MinGW on Windows, it gives me the error "file.o: File not recognized: file format not recognized". I've tried to do it with cygwin instread, but the same thing happens. Any suggestions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

话少心凉 2024-07-25 04:10:46

很可能您有一个链接器无法理解格式的目标文件。 有很多不同的格式:COFF、OMF、ELF(这样的例子不胜枚举……)

幸运的是,有一个免费工具可以让您从一种格式转换为另一种格式。 它还可以让您了解对象格式的内部结构,并告诉您对象文件以哪种格式进行编码。

程序

那个小命令行实用 解决了我遇到的所有对象格式问题。 它甚至可以反汇编库、目标文件、DLL 和可执行文件。

Most likely you have a object file in a format that the linker does not understand. There are lots of different formats out there: COFF, OMF, ELF (the list goes on..)

Fortunately there is a free tool that lets you convert from one format to another. It also lets you take a look into the internals of the object format and tells you in which format a object file is encoded.

http://www.agner.org/optimize/#objconv

That little command line utility solved all the object format problems I ever had. It can even disassemble libs, object files, DLLs and executables.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文