Gcc linaro arm linux gnueabihf

Linaro Stable Binary Toolchain Release GCC 5.2-2015.11-2

The Linaro Toolchain Working Group is pleased to announce the availability of the Linaro Stable Binary Toolchain GCC 5.2-2015.11-2 Release Archives.

These archives provide cross-toolchain executables (compiler, debugger, linker, etc.) and shared libraries (libstdc++, libc, etc.) that target ARM or Aarch64 GNU /Linux and bare-metal environments. The cross-toolchain binaries execute on a Linux or MS Windows (under mingw32) host operating-system.

Beginning with the Linaro 4.9-2014.11 release, Linaro has changed the layout and structure of its prebuilt toolchain binary release archives. The Linaro 4.9-2014.11 release is the first release built with ABE . ABE provides a maintainable and flexible toolchain building, benchmarking, validation, and release framework. For further details on ABE , please visit https://wiki.linaro.org/ABE.

The folders above describe the ARM and Aarch64 target triplets, i.e., the system on which you want your programs/applications to run. For more details on triplets, please click here.

Each folder contains a manifest.txt file further describing the target and host systems meant for the toolchain and the toolchain component source versions.

Supported Targets

Linaro binary toolchains are provided for the following ARM and Aarch64 targets:

aarch64-linux-gnu

Toolchains for little-endian, 64-bit ARMv8 for GNU /Linux systems

  • gcc-linaro-*x86_64_aarch64-linux-gnu.tar.xz
    • Linux 64-bit binaries for the Aarch64 Linux cross-toolchain
    • Windows 32-bit binaries for the Aarch64 Linux cross-toolchain

    armv8l-linux-gnueabihf

    Toolchains for little-endian, 32-bit ARMv8 for GNU /Linux systems

    • gcc-linaro-*-x86_64_armv8l-linux-gnueabihf.tar.xz
      • Linux 64-bit binaries for the Aarch64 Linux cross-toolchain
      • Windows 32-bit binaries for the Aarch64 Linux cross-toolchain

      aarch64-none-elf

      Toolchains for little-endian, 64-bit ARMv8 for bare-metal systems

      • gcc-linaro-*x86_64_aarch64-elf.tar.xz
        • Linux 64-bit binaries for the Aarch64 bare-metal cross-toolchain
        • Windows 32-bit binaries for the Aarch64 bare-metal cross-toolchain

        aarch64_be-linux-gnu

        Toolchains for big-endian, 64-bit ARMv8 for GNU /Linux systems

        • gcc-linaro-*x86_64_aarch64_be-linux-gnu.tar.xz
          • Linux 64-bit binaries for the Aarch64 Linux Big Endian cross-toolchain
          • Windows 32-bit binaries for the Aarch64 Linux Big Endian cross-toolchain

          aarch64_be-none-elf

          Toolchains for big-endian, 64-bit ARMv8 for bare-metal systems

          • gcc-linaro-*x86_64_aarch64_be-elf.tar.xz
            • Linux 64-bit binaries for the Aarch64 bare-metal Big Endian cross-toolchain
            • Windows 32-bit binaries for the Aarch64 bare-metal Big Endian cross-toolchain

            arm-linux-gnueabi

            Toolchains for little-endian, soft-float, 32-bit ARMv7 (and earlier) for GNU /Linux systems

            • gcc-linaro-*x86_64_arm-linux-gnueabi.tar.xz
              • Linux 64-bit binaries for the ARMv7 Linux soft float cross-toolchain
              • Windows 32-bit binaries for the ARMv7 Linux soft float cross-toolchain

              arm-linux-gnueabihf

              Toolchains for little-endian, hard-float, 32-bit ARMv7 (and earlier) for GNU /Linux systems

              • gcc-linaro-*x86_arm-linux-gnueabihf.tar.xz
                • Linux 32-bit binaries for the ARMv7 Linux hard float cross-toolchain
                • Linux 64-bit binaries for the ARMv7 Linux hard float cross-toolchain
                • Windows 32-bit binaries for the ARMv7 Linux hard float cross-toolchain

                arm-none-eabi

                Toolchains for little-endian, soft-float, 32-bit ARMv7 (and earlier) for bare-metal systems

                • gcc-linaro-*x86_64_arm-eabi.tar.xz
                  • Linux 64-bit binaries for the ARMv7 bare-metal cross-toolchain
                  • Windows 32-bit binaries for the ARMv7 bare-metal cross-toolchain

                  armeb-linux-gnueabihf

                  Toolchains for big-endian, hard-float, 32-bit ARMv7 (and earlier) for GNU /Linux systems

                  • gcc-linaro-*x86_64_armeb-linux-gnueabihf.tar.xz
                    • Linux 64-bit binaries for the ARMv7 Linux Big Endian hard float cross-toolchain
                    • Windows 32-bit binaries for the ARMv7 Linux Big Endian hard float cross-toolchain

                    armeb-none-eabi

                    Toolchains for big-endian, soft-float, 32-bit ARMv7 (and earlier) for bare-metal systems

                    • gcc-linaro-*x86_64_armeb-eabi.tar.xz
                      • Linux 64-bit binaries for the ARMv7 bare-metal Big Endian cross-toolchain
                      • Windows 32-bit binaries for the ARMv7 bare-metal Big Endian cross-toolchain

                      NEWS

                      GCC 5.2 2015.11-2

                      The Linaro GCC 5.2 2015.11-2 binary toolchain release respin is built from the Linaro GCC -5.2-2015.11-2 release source archive. The Linaro GCC -5.2-2015.11-2 release source archive is derived from the same sources as the Linaro GCC -5.2-2015.10 snapshot source archive.

                      This release includes fixes for the issues specified in the Linaro GCC 5.2 2015.11-2-rc1 release-candidate.

                      GCC 5.2 2015.11-2-rc1

                      The Linaro GCC 5.2 2015.11-2-rc1 binary toolchain release-candidate is built from the Linaro GCC -5.2-2015.11-2-rc1 release-candidate source archive. The Linaro GCC -5.2-2015.11-2-rc1 release-candidate source archive is derived from the same sources as the Linaro GCC -5.2-2015.10 snapshot source archive.

                      This release-candidate includes fixes for the following issues:

                      • Linaro bug 1995 identified a problem where the installed sysroot was not in the place that the compiler expected the sysroot to be located by default. This is fixed in the Linaro GCC 5.2 2015.11-2-rc1 binary toolchain release-candidate.

                      GCC 5.2 2015.11-1

                      The Linaro GCC 5.2 2015.11-1 binary toolchain release is built from the Linaro GCC -5.2-2015.11-1 release source archive. The Linaro GCC -5.2-2015.11-1 release source archive is derived from the same sources as the Linaro GCC -5.2-2015.10 snapshot source archive.

                      This release includes fixes for the issues specified in the Linaro GCC 5.2 2015.11-1-rc1 release-candidate.

                      GCC 5.2 2015.11-1-rc1

                      The Linaro GCC 5.2 2015.11-1-rc1 binary toolchain release-candidate is built from the Linaro GCC -5.2-2015.11-1-rc1 release-candidate source archive. The Linaro GCC -5.2-2015.11-1-rc1 release-candidate source archive is derived from the same sources as the Linaro GCC -5.2-2015.10 snapshot source archive.

                      This release-candidate includes fixes for the following issues:

                      • The arm-eabi-none multi-libs are now available in the toolchain sysroot as a fix for Linaro bug 1920 and Linaro bug 1922.
                      • Linaro glibc 2.21 now provides ld-linux-aarch64_be.so.1.
                      • Linux 32-bit host binaries for the ARMv7 Linux hard float cross-toolchain (arm-linux-gnueabihf triple).

                      GCC 5.2 2015.11

                      The Linaro GCC 5.2 2015.11 binary toolchain release is built from the Linaro GCC -5.2-2015.11 release source archive. The Linaro GCC -5.2-2015.11 release source archive is derived from the same sources as the Linaro GCC -5.2-2015.10 snapshot source archive.

                      GCC 5.2 2015.11-rc1

                      The Linaro GCC 5.2 2015.11-rc1 binary toolchain release-candidate is built from the Linaro GCC -5.2-2015.11 release-candidate source archive. The Linaro GCC -5.2-2015.11-rc1 release-candidate source archive is derived from the same sources as the Linaro GCC -5.2-2015.10 snapshot source archive.

                      NOTES

                      • The toolchain component source release archives for the individual components are at http://releases.linaro.org/components/toolchain/. Select the component (e.g. gcc, glibc, binutils, gdb) as available. If the component isn’t available then it means that a git repository tag or branch was used for the binary toolchain build. Please refer to the manifest files for complete information on the components used to build this toolchain.
                      • The binary tarball has been split into 3 parts. As a result, you can install only the parts needed:
                        • gcc-linaro-*.tar.xz – the compiler and tools
                        • runtime-linaro-*.tar.xz – runtime libraries needed on the target
                        • sysroot-linaro-*.tar.xz – sysroot (a set of libraries and headers to develop against)
                        • Presently, only the bare-metal toolchains are multilib enabled. There is a plan to enable multilib for arm-linux toolchains in the near future.
                        • Beginning 2014.11, sysroots will provide newer glibc versions (as chose by Linaro engineers) in order that users get the latest features and optimizations in the system libraries.
                        • Eglibc 2.15 compatible sysroots will no longer be released. Users that require Eglibc 2.15 sysroots that need the latest Linaro GCC compiler should use a previous quarterly released sysroot of the required version.
                        • With the exception of the arm-linux-gnueabihf targetted toolchain, the x86 (32-bit) Linux host toolchains are no longer provided. x86_64 (64-bit) Linux host toolchains are provided instead. This is because using LTO requires a 64-bit host toolchain.
                        • The arm-linux-gnueabihf targeted toolchain no longer supports soft-float. The arm-linux-gnueabi targeted toolchain should be used for this purpose.

                        Feedback and Support

                        Subscribe to the important Linaro mailing lists and join our IRC channels to stay on top of Linaro development.

                        • Linaro Bugzilla bug tracker for Linaro Linux Binary Toolchains
                        • Linaro Toolchain Development mailing list
                        • Linaro Toolchain IRC channel on irc.freenode.net at #linaro-tcwg

                        Источник

                        The Linaro Binary Toolchain

                        On ARM targets (arm*-*-*), a bug introduced in GCC 5 that affects conformance to the procedure call standard ( AAPCS ) has been fixed. The bug affects some C++ code where class objects are passed by value to functions and could result in incorrect or inconsistent code being generated. This is an ABI change. If the option -Wpsabi is enabled (on by default) the compiler will emit a diagnostic note for code that might be affected.

                        GCC 5 and GCC 6 releases will continue to be affected by the ABI bug, since changing ABI in these releases is not practical. A warning enabled by -Wpsabi option was added to GCC 5 and GCC 6 toolchains to diagnose codebases that might be affected by the ABI bug.

                        Additionally, this same bug was present in AArch64 backend in development versions of GCC 7. There was no releases of GCC with this bug present in AArch64 backend, therefore the release notes does not mention this. However, be advised that any code bases built with development versions of GCC 7 need to be recompiled with released version of GCC 7 to conform to ABI .

                        For an explanation of GCC 7 series changes please see the following website:

                        For help in porting to GCC 7 please see the following explanation:

                        Download release packages from:

                        Previous snapshots and release-candidates are at:

                        A description of the arm and AArch64 target triples can be found at:

                        Host Requirements

                        Linaro officially supports the current and previous Ubuntu LTS releases (as of the time of this release). This does not mean that the toolchain will not work on other/older Linux distributions. See the following for the life-time of Ubuntu LTS releases.

                        The host system upon which the cross-compiler will run requires a minimum of glibc 2.14, because of API changes to glibc’s memcpy API .

                        Package Versions

                        Newlib 2.5 (newlib-2_5_0 tag)

                        GNU Binutils 2.28 (users/linaro/binutils-2_28-branch)

                        Linaro toolchain package git branches are hosted at:

                        NEWS for GCC 7 (as of Linaro GCC 7.5-2019.12)

                        • Runtest and gdbserver are no longer installed in the toolchain bin/ directory. Binary releases no longer include runtest at all, and gdbserver is a target tool; it is now shipped in the sysroot under usr/bin/.

                        LDTS case #2211: gdbserver and runtest in GCC binary release are in the wrong place or have the wrong name

                        Linaro bugzilla #3344: gdbserver broken in Linaro 2017.02

                        • The Linaro GCC 7.4-2019.01 snapshot added a fix for Linaro bug 4007: “Internal compiler error with -mcpu=thunderx2t99”.
                        • The Linaro GCC 7.2-2017.09 snapshot added float and integer moves improvement for AArch64 targets.
                        • The Linaro GCC 7.1-2017.07 snapshot added prefetching configuration improvement for AArch64 targets and laid groundwork to enabling prefetching in more cases.
                        • Previous MinGW hosted version of Linaro GCC C preprocessor failed to convert character set used for string, character constants, etc. This is fixed in this release.

                        Linaro bugzilla #3040 : CC1 and cc1plus cannot convert UTF -8.

                        • Performance related backports from the following snapshots have been included: Linaro GCC 7.1-2017.05, Linaro GCC 7.1-2017.06, Linaro GCC 7.1-2017.07, Linaro GCC 7.2-2017.08, Linaro GCC 7.2-2017.09, Linaro GCC 7.2-2017.10, Linaro GCC 7.2-2018.04, Linaro GCC 7.4-2019.01 and Linaro GCC 7.5-2019.11.

                        See the following Linaro GCC snapshots:

                        Источник

                        Читайте также:  Создаем загрузочную флешку с windows 10 linux
Оцените статью
Adblock
detector