Difference between revisions of "Applications/Gcc"
From HPC
MSummerbell (talk | contribs) (→Further Information) |
m (→Navigation) |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 3: | Line 3: | ||
*Description: The GNU Compiler Collection is a collection of compilers for C, C++, Objective-C, Fortran, Ada and Go. | *Description: The GNU Compiler Collection is a collection of compilers for C, C++, Objective-C, Fortran, Ada and Go. | ||
*Version(s):legacy, 4.9.3, 5.2.0, 6.3.0 | *Version(s):legacy, 4.9.3, 5.2.0, 6.3.0 | ||
− | *Module(s):gcc/legacy, gcc/4.9.3, gcc/5.2.0, gcc/6.3.0 | + | *Module(s):gcc/legacy, gcc/4.9.3, gcc/5.2.0, gcc/6.3.0, gcc/7.3.0 and gcc/8.2.0 |
*Licence: GNU Licence | *Licence: GNU Licence | ||
Line 24: | Line 24: | ||
<pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | <pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | ||
[username@login01 ~]$ module add gcc/6.3.0 | [username@login01 ~]$ module add gcc/6.3.0 | ||
+ | </pre> | ||
+ | ====7.3.0==== | ||
+ | <pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | ||
+ | [username@login01 ~]$ module add gcc/7.3.0 | ||
+ | </pre> | ||
+ | ====8.2.0==== | ||
+ | <pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | ||
+ | [username@login01 ~]$ module add gcc/8.2.0 | ||
</pre> | </pre> | ||
===Compilers=== | ===Compilers=== | ||
+ | |||
The following are examples of how to compile programs using GCC. | The following are examples of how to compile programs using GCC. | ||
+ | |||
====C Compiler==== | ====C Compiler==== | ||
+ | |||
-fopenmp is not needed when compiling non openmp code | -fopenmp is not needed when compiling non openmp code | ||
<pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | <pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | ||
Line 36: | Line 47: | ||
====C++ Compiler==== | ====C++ Compiler==== | ||
+ | |||
-fopenmp is not needed when compiling non openmp code | -fopenmp is not needed when compiling non openmp code | ||
<pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | <pre style="background-color:#000000; color: white; font-family: monospace, sans-serif;"> | ||
Line 48: | Line 60: | ||
</pre> | </pre> | ||
− | == | + | ==Next Steps== |
− | [https://gcc.gnu.org/ GCC] | + | |
− | [[Programming/C |Programming Support - C]] | + | * [https://gcc.gnu.org/ GCC] |
− | [[Programming/C-Plusplus |Programming Support - C++]] | + | * [[Programming/C |Programming Support - C]] |
+ | * [[Programming/C-Plusplus |Programming Support - C++]] | ||
+ | |||
+ | {{Modulepagenav}} |
Latest revision as of 10:44, 16 November 2022
Contents
Application Details
- Description: The GNU Compiler Collection is a collection of compilers for C, C++, Objective-C, Fortran, Ada and Go.
- Version(s):legacy, 4.9.3, 5.2.0, 6.3.0
- Module(s):gcc/legacy, gcc/4.9.3, gcc/5.2.0, gcc/6.3.0, gcc/7.3.0 and gcc/8.2.0
- Licence: GNU Licence
Usage Examples
Modules
The gcc modules can be loaded by the following commands.
Legacy
[username@login01 ~]$ module add gcc/legacy
4.9.3
[username@login01 ~]$ module add gcc/4.9.3
5.2.0
[username@login01 ~]$ module add gcc/5.2.0
6.3.0
[username@login01 ~]$ module add gcc/6.3.0
7.3.0
[username@login01 ~]$ module add gcc/7.3.0
8.2.0
[username@login01 ~]$ module add gcc/8.2.0
Compilers
The following are examples of how to compile programs using GCC.
C Compiler
-fopenmp is not needed when compiling non openmp code
[username@login01 ~]$ gcc -o test -fopenmp test.c [username@login01 ~]$ ./test.c
C++ Compiler
-fopenmp is not needed when compiling non openmp code
[username@login01 ~]$ g++ -o test -fopenmp test.c [username@login01 ~]$ ./test.c
Fortran Compiler
[username@login01 ~]$ gfortran -o test test.f03 [username@login01 ~]$ ./test.f