If you get a PUSHL-related error…
If you’re compiling a piece of code and getting an error message saying something about PUSHL or “invalid suffix for PUSH”, it means you’re feeding x86 assembly code to an x86_64 assembler.
Possible causes:
-
The code you’re trying to compile really does contain x86 assembly, perhaps inlined from C, but you’re targeting x86_64.
-
Your toolchain somehow contains a mix of x86 compiler and x86_64 assembler. Try cleaning up your PATH.