linux–GCC错误消息“错误:不支持’mov’”是什么意思?

linux–GCC错误消息“错误:不支持’mov’”是什么意思?,第1张

概述我只是想编译一些我从书中输入的简单示例代码,GCC给出了上述错误.这是我的代码:$cat -n test.cpp 1 #define READ_COMMAND 3 2 3 #define MSG_LENGTH 128 4 5 #include <stdlib.h> 6 #include <stdio.h

我只是想编译一些我从书中输入的简单示例代码,GCC给出了上述错误.这是我的代码:

$cat -n test.cpp 1  #define READ_COMMAND    3 2   3  #define MSG_LENGTH  128 4   5  #include 

代码应该调用syslog()系统调用来从内核printk()环形缓冲区读取最后128个字节.以下是有关我的 *** 作系统和系统配置的一些信息:

uname -a:

linux 3.2.0-26-generic #41-Ubuntu SMP Thu Jun 14 17:49:24 UTC 2012 x86_64 x86_64 x86_64 GNU/linux

gcc -v:

Using built-in specs.ColLECT_GCC=gccColLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6/lto-wrapperTarget: x86_64-linux-gnu

Configured with: ../src/configure -v –with-pkgversion=’Ubuntu/linaro 4.6.3-1ubuntu5′ –with-BUGurl=file:///usr/share/doc/gcc-4.6/README.BUGs –enable-languages=c,c++,fortran,objc,obj-c++ –prefix=/usr –program-suffix=-4.6 –enable-shared –enable-linker-build-ID –with-system-zlib –libexecdir=/usr/lib –without-included-gettext –enable-threads=posix –with-gxx-include-dir=/usr/include/c++/4.6 –libdir=/usr/lib –enable-nls –with-sysroot=/ –enable-clocale=gnu –enable-libstdcxx-deBUG –enable-libstdcxx-time=yes –enable-gnu-unique-object –enable-plugin –enable-objc-gc –disable-werror –with-arch-32=i686 –with-tune=generic –enable-checking=release –build=x86_64-linux-gnu –host=x86_64-linux-gnu –target=x86_64-linux-gnu

Thread model: posixgcc version 4.6.3 (Ubuntu/linaro 4.6.3-1ubuntu5) 

下面是完整的错误:

$gcc test.cpptest.cpp: Assembler messages:test.cpp:25: Error: unsupported for `mov'
最佳答案您正在尝试在64位计算机上编译32位汇编代码.您列出的内联汇编编译为:

movl -24(%rbp),%ebxmovl %rsi,%ecx       <--- error heremovl -28(%rbp),%edxmovl 3,%eaxint 8movl %eax,%r12d

如您所见,您试图在32位寄存器中存储64位寄存器,这是非法的.更重要的是,这也不是64位ABI系统调用协议.

尝试使用-m32进行编译以强制使用32位ABI.

总结

以上是内存溢出为你收集整理的linux – GCC错误消息“错误:不支持’mov’”是什么意思?全部内容,希望文章能够帮你解决linux – GCC错误消息“错误:不支持’mov’”是什么意思?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1047823.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)