Difference between revisions of "Applications/Gcc"
From HPC
m (Pysdlb moved page Applications/Gcc to Applications/keep-Gcc) |
m (→Navigation) |
||
| (3 intermediate revisions by the same user 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] | * [https://gcc.gnu.org/ GCC] | ||
| Line 54: | Line 66: | ||
* [[Programming/C-Plusplus |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