编译 C++使用 g++ 进行编程

发布于 2025-01-20 09:14:04 字数 230 浏览 0 评论 0原文

我在 Windows 上的 g++ 上编译 C++ 程序时遇到问题。我的程序由以下文件组成:一个 cpp 文件、两个头文件和一个 MASM 格式的 asm 文件。我尝试使用以下命令编译 x64 PE 文件:

g++ test.asm test.cpp -o test.exe

我收到以下异常: 无法识别文件格式;视为链接描述文件。

有人能指出我正确的方向吗?提前致谢!

I am having issues compiling my C++ program on g++ on Windows. My program is comprised of of the following files: one cpp file, two header files, and an asm file in MASM format. I tried using the following command to compile the x64 PE file:

g++ test.asm test.cpp -o test.exe

I am getting the following exception:
file format not recognized; treating as linker script.

Could someone point me in the right direction? Thanks in advance!

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

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

发布评论

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

评论(1

眸中客 2025-01-27 09:14:04

汇编器有不同的方言。 MSVC使用MASM,而GCC使用气体。

如果您的.ASM file的格式不理解GCC,请尝试使用其他汇编程序,例如 jwasm , uasm sasm nasm> nasm coff对象文件(例如JWASM -COFF -WIN64 TEST.ASM -FO test.o),然后使用GCC将C ++程序与之链接。

There are different dialects of assembler. MSVC uses MASM while GCC uses GAS.

If your .asm file's format isn't understood by GCC try a different assembler like JWasm, UASM, SASM or NASM to compile it to COFF object file (e.g. jwasm -coff -win64 test.asm -Fo test.o) and then use GCC to link your C++ program with it.

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