I have rootfs and klibc file systems. I am creating make
rules and some developers have an older compiler without inter-networking.note1 I am trying to verify that all the files get built with arm only when a certain version of the compiler is detected. I have re-built the tree's several times. I was using readelf -A
and looking for Tag_THUMB_ISA_use: Thumb-1
, but this seem to be in arm only code (but was built with the interworking compiler) as well as thumb
code. I can manually run objdump -S
and examine the assembler to determine what instruction set is in use.
However, it would be much easier if I had a script/tool predicate so that find
, etc can be used to search through the shadow file systems to look for binaries that may have been missed. I thought that some of this information would be in the ELF
header and accessible via objdump
or readelf
, but I haven't found anything reliable.
Specifically I am looking for,
- Compiled 'C' that wouldn't run without a
CONFIG_ARM_THUMB
Linux system.
make
rules that use 'C' compiler flags that choke a non-thumb compilers.
note1: Interworking allow easy switching between thumb
and arm
modes, and the compiler will automatically generate code to support calling from either mode.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…