--- title: "GCC Upgrade (Gen3)" slug: "fmadio-os-custom-gcc-upgrade-gen3" updated: 2024-10-05T06:17:05Z published: 2024-10-05T06:17:05Z canonical: "docs.fmad.io/fmadio-os-custom-gcc-upgrade-gen3" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.fmad.io/llms.txt > Use this file to discover all available pages before exploring further. # GCC Upgrade (Gen3) On the FMADIO Generation 3 systems, the GCC version is quite old, we have kept this for stability as the systems have been using this version for a long time without issues. This can cause problems when compiling software requiring support for newer C and C++ specifications. Generation4 systems have GCC12 as the default compiler We support GCC10 on the Generation3 systems, requires some custom updates ## Step 1) Download the package Download the GCC10 package from [https://firmware.fmad.io/download/firmware/gcc10.tcz](https://firmware.fmad.io/download/firmware/gcc10.tcz) MD5 hash is: 59bcce1e56bd3f7cfe598ccb989bf547 ## Step 2) Move the file to the package directory ```plaintext sudo cp gcc10.tcz  /mnt/system/tce/optional/ ``` ## Step 3) Update the package loader Edit the file ```plaintext /mnt/system/tce/onboot.lst ``` Add gcc10.tcz to the list of packages to load on boot ![](https://cdn.document360.io/b9aab0c4-36d0-4616-9673-30b661455571/Images/Documentation/image(11).png?sv=2026-02-06&spr=https&st=2026-11-13T19%3A56%3A44Z&se=2026-11-13T20%3A56%3A44Z&sr=c&sp=r&sig=kdJ%2BPmqkL%2BI%2FAgkMTKFzoLQl5e2ieK1SgjbAYI0jFwM%3D) ## Step 4) Reboot the system ```plaintext sudo reboot ``` ## Step 5) Check install On reboot GCC10 is installed under `gcc-10.2` and `g++-10.2` To confirm ```plaintext gcc-10.2 -v ``` Example output ```plaintext fmadio@fmadio100v2-228U:~$ gcc-10.2 -v Using built-in specs. COLLECT_GCC=gcc-10.2 COLLECT_LTO_WRAPPER=/tmp/tcloop/gcc10/usr/local/bin/../libexec/gcc/x86_64-pc-linux-gnu/10.2.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /mnt/store0/tools/gcc/objdir/../configure --prefix=/usr/local/ --program-suffix=-10.2 --enable-languages=c,c++ --disable-multilib --disable-docs Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.2.0 (GCC) fmadio@fmadio100v2-228U:~$ ``` Similarly for G++ ```plaintext g++-10.2 -v ``` Example output ```plaintext fmadio@fmadio100v2-228U:~$ g++-10.2 -v Using built-in specs. COLLECT_GCC=g++-10.2 COLLECT_LTO_WRAPPER=/tmp/tcloop/gcc10/usr/local/bin/../libexec/gcc/x86_64-pc-linux-gnu/10.2.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /mnt/store0/tools/gcc/objdir/../configure --prefix=/usr/local/ --program-suffix=-10.2 --enable-languages=c,c++ --disable-multilib --disable-docs Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.2.0 (GCC) fmadio@fmadio100v2-228U:~$ ```