本文介绍了错误:`push'无效的指令后缀的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 我在编译程式时遇到问题。I have been having issues with compiling a program. I am unsure what these mean and I would be grateful if anyone could help.C:\Users\Joshua\Documents\GitHub\Zeus-TSO\_deps\libmpg123\dct64_sse.S: Assembler messages:C:\Users\Joshua\Documents\GitHub\Zeus-TSO\_deps\libmpg123\dct64_sse.S:41: Error: invalid instruction suffix for `push'C:\Users\Joshua\Documents\GitHub\Zeus-TSO\_deps\libmpg123\dct64_sse.S:46: Error: invalid instruction suffix for `push'C:\Users\Joshua\Documents\GitHub\Zeus-TSO\_deps\libmpg123\dct64_sse.S:449: Error: invalid instruction suffix for `pop'C:\Users\Joshua\Documents\GitHub\Zeus-TSO\_deps\libmpg123\dct64_sse.S:451: Error: invalid instruction suffix for `pop'_deps\libmpg123\CMakeFiles\libmpg123_static.dir\build.make:378: recipe for target '_deps/libmpg123/CMakeFiles/libmpg123_static.dir/dct64_sse.S.obj' failedmingw32-make[2]: [_deps/libmpg123/CMakeFiles/libmpg123_static.dir/dct64_sse.S.obj] Error 1CMakeFiles\Makefile2:225: recipe for target '_deps/libmpg123/CMakeFiles/libmpg123_static.dir/all' failedmingw32-make[1]: [_deps/libmpg123/CMakeFiles/libmpg123_static.dir/all] Error 2Makefile:74: recipe for target 'all' failedmingw32-make: [all] Error 2推荐答案您有两个选项: >使用32位汇编器,例如使用 - 32 选项; 通过替换64位例如%rax 的寄存器,而不是与%eax 的32位寄存器$ c> push / pop 说明。Use 32-bit assembler, for example by utilizing --32 option;Change code by substituting 64-bit (extended) registers such as %rax, for example, instead of 32-bit registers such as %eax used with push/pop instructions.由于构建系统似乎是CMake,因此我会将您引导至此 手册Since the build system appears to be CMake, I'd refer you to this manual on how to configure the build for various Assembly dialects in CMake.您可以尝试:set(CMAKE_ASM_FLAGS "--32")但我没有测试它。 这篇关于错误:`push'无效的指令后缀的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!
08-19 16:27