This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: updated Cortex-M3 build script (again)


>  > > Cortex-M3 is a Thumb-only processor (if I'm not mistaken).
>  > Thumb only?  You astonish me.

Thumb 2 - the best of both worlds (well complexity apart...)

>  > By the way, thoroughly off topic -- anybody know how to identify, from sh
>  > script only, whether you're running on an old ABI glibc or new EABI
>  > install?

> http://wiki.debian.org/ArmEabiPort says:
>
>  ----8<---
>     * objdump -x for compiled binary:
>  private flags = 4000002: [Version4 EABI] [has entry point]
>
>     * "file" on compiled binary (under Debian):
>  ELF 32-bit LSB executable, ARM, version 1 (SYSV), for GNU/Linux 2.4.17, dynamically linked (uses shared libs), for GNU/Linux 2.4.17, stripped
>
>     * "readelf -h | grep Flags""
>  Flags: 0x4000002, has entry point, Version4 EABI
>  ----8<---

Another way is to check whether you have /lib/ld-linux.so.2 (old ABI)
or /lib/ld-linux.so.3 (EABI)
Assuming they don't have the old one still lying around of course...
it depends what precisely you mean really.  I see that some random
config.guess does:

        if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
            | grep -q __ARM_EABI__
        then
            echo ${UNAME_MACHINE}-unknown-linux-gnu
        else
            echo ${UNAME_MACHINE}-unknown-linux-gnueabi
        fi

to check whether the compiler is in EABI mode by default (if
"__ARM_EABI__" is defined, the CPP replaces it with "1")

Good luck!

    M

--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]