Closed5

opensuseでarmにクロスコンパイル、qemuで実行

(以前に色々入れてたので再現性不明)

sudo zypper in cross-arm-none-gcc10

qemu では動いたがraspiにscp

./tmp.arm.o
Illegal instruction

動かん

arm-none-eabi-gcc -v tmp.c -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard

別のtoolchainいる

いったんtargetのassemblerが見れれば良い気がするのであきらめ

arm-none-eabi-gcc -S -v tmp.c -march=armv6 -mfpu=vfpv2 -mfloat-abi=hard

scp .s pi1:

gcc tmp.s

pi@pi1:~ $ readelf -A a.out
Attribute Section: aeabi
File Attributes
  Tag_CPU_name: "6"
  Tag_CPU_arch: v6
  Tag_ARM_ISA_use: Yes
  Tag_THUMB_ISA_use: Thumb-1
  Tag_FP_arch: VFPv2
  Tag_ABI_PCS_wchar_t: 4
  Tag_ABI_FP_rounding: Needed
  Tag_ABI_FP_denormal: Needed
  Tag_ABI_FP_exceptions: Needed
  Tag_ABI_FP_number_model: IEEE 754
  Tag_ABI_align_needed: 8-byte
  Tag_ABI_align_preserved: 8-byte, except leaf SP
  Tag_ABI_enum_size: int
  Tag_ABI_VFP_args: VFP registers
  Tag_CPU_unaligned_access: v6
このスクラップは2021/01/11にクローズされました
ログインするとコメントできます