Long-Term Supported Versions

    Innovation Versions

      GCC Toolset User Guide

      Introduction

      To ensure the stability of the OS, the latest version of base software is not selected generally. Instead, a relatively stable version is used. openEuler 20.03 LTS uses GCC 7.3.1 as the baseline for development. However, GCC 7.3.0 does not support new hardware features of Arm v8.6. To support new Arm features, the GCC toolset that supports multiple compiler versions is designed. GCC Toolset 10 can be used by applications requiring new features later than Arm v8.6, to support compile and build.

      Installation and Deployment

      Software Requirements

      OS: openEuler 20.03 LTS SP4

      Hardware Requirement

      aarch64 architecture

      Software Installation

      To prevent conflicts between installation dependencies of GCC Toolset 10 and the default GCC, the software package of GCC Toolset 10 is prefixed with gcc-toolset-10-, followed by the name of the original GCC software package.

      Install the default compiler GCC 7.3.0 in /usr/.

      yum install -y gcc gcc-c++
      

      Install GCC Toolset 10 in /opt/openEuler/gcc-toolset-10/root/usr/.

      yum install -y gcc-toolset-10-gcc*
      

      Usage

      In the installation path /opt/openEuler/gcc-toolset-10/root/usr/ of GCC Toolset 10, run the following commands to use the software:

      export PATH=/opt/openEuler/gcc-toolset-10/root/usr/bin/:$PATH
      export LD_LIBRARY_PATH=/opt/openEuler/gcc-toolset-10/root/usr/lib64/:$LD_LIBRARY_PATH
      

      Note: GCC Toolset 10 supports only new hardware features later than Arm v8.6. For other features, you are advised to use the default GCC 7.3.0 to prevent unknown compilation errors.

      Compatibility

      This section describes the compatibility issues in some special scenarios. This project is in continuous iteration and issues will be fixed as soon as possible. Developers are welcome to join this project.

      The GCC toolset solution adapts only to the new features of Arm v8.6 and supports only the AArch64 architecture.

      Bug Catching

      Buggy Content

      Bug Description

      Submit As Issue

      It's a little complicated....

      I'd like to ask someone.

      PR

      Just a small problem.

      I can fix it online!

      Bug Type
      Specifications and Common Mistakes

      ● Misspellings or punctuation mistakes;

      ● Incorrect links, empty cells, or wrong formats;

      ● Chinese characters in English context;

      ● Minor inconsistencies between the UI and descriptions;

      ● Low writing fluency that does not affect understanding;

      ● Incorrect version numbers, including software package names and version numbers on the UI.

      Usability

      ● Incorrect or missing key steps;

      ● Missing prerequisites or precautions;

      ● Ambiguous figures, tables, or texts;

      ● Unclear logic, such as missing classifications, items, and steps.

      Correctness

      ● Technical principles, function descriptions, or specifications inconsistent with those of the software;

      ● Incorrect schematic or architecture diagrams;

      ● Incorrect commands or command parameters;

      ● Incorrect code;

      ● Commands inconsistent with the functions;

      ● Wrong screenshots.

      Risk Warnings

      ● Lack of risk warnings for operations that may damage the system or important data.

      Content Compliance

      ● Contents that may violate applicable laws and regulations or geo-cultural context-sensitive words and expressions;

      ● Copyright infringement.

      How satisfied are you with this document

      Not satisfied at all
      Very satisfied
      Submit
      Click to create an issue. An issue template will be automatically generated based on your feedback.
      Bug Catching
      编组 3备份