我在 qemu 上使用 Debian 8 mips。
我在主机操作系统上编译后运行二进制文件并收到错误 Illegal instruction
编译器命令行:
mips-linux-gnu-g++ -EB -O -march=mips32r2 struct_bit_fields.cc -o struct_bit_fields
编译时是否应该指定其他标志?
处理器:
system type : MIPS Malta
processor : 0
cpu model : MIPS 20Kc V10.0 FPU V0.0
BogoMIPS : 565.24
wait instruction : no
microsecond timers : yes
tlb_entries : 48
extra interrupt vector : yes
hardware watchpoint : yes, count: 1, address/irw mask: [0x0ff8]
ASEs implemented : mips3d
shadow register sets : 1
kscratch registers : 0
core : 0
VCED exceptions : not available
VCEI exceptions : not available
gcc 版本:
Using built-in specs.
COLLECT_GCC=mips-linux-gnu-g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc-cross/mips-linux-gnu/6/lto-wrapper
Target: mips-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 6.3.0-18'
--with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs
--enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++
--prefix=/usr --program-suffix=-6 --enable-shared
--enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object
--disable-libitm --disable-libsanitizer --disable-libquadmath --enable-plugin --enable-default-pie
--with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-mips-cross/jre --enable-java-home
--with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-mips-cross
--with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-mips-cross
--with-arch-directory=mips --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
--disable-libgcj --enable-multiarch --enable-multilib --with-arch-32=mips32r2
--with-fp-32=xx --with-lxc1-sxc1=no --enable-targets=all --with-arch-64=mips64r2
--enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu
--target=mips-linux-gnu --program-prefix=mips-linux-gnu-
--includedir=/usr/mips-linux-gnu/include
Thread model: posix
gcc version 6.3.0 20170516 (Debian 6.3.0-18)