How can I fix the Fortran module problem with gfortran?

In summary, you were trying to create a Fortran module and were having trouble because the file extension was incorrect. You changed the file extension to .f and solved your problem.
  • #1
mgborja
2
0
Hi!

I am writing a simple code to get familiar with creating Fortran module. The program consist of a main.f and a module.mod file. When I type in:

Code:
gfortran main.f

I get the following error:

Code:
Fatal Error: File 'module.mod' opened at (1) is not a GFORTRAN module file

I think I found the problem but I don't know how to fix it. It turns out that module.mod is a file with property type: Amiga SoundTracker audio (audio/x-mod). The extention .mod is being recognized by defult as an audio file and not as a Fortran text file.

I have done every thing I can. I changed the "open with" option to open with GVim by defult but that does not change the file type to a Fortran text file. I also tried changing the name to module.f which changes the property type to Fortran source code (text/x-fortran) but then when I execute teh main,f file I get this error instead:

Code:
Fatal Error: Can't open module file 'module.mod' for reading at (1): No such file or directory

The file <filename> and stat <filename> commands have not helped eather. It seems like an easy problem to fix but I just don't know how :(

Please help
 
Last edited:
Technology news on Phys.org
  • #2
I'm not expert in Fortran, and haven't written any code in that language for about 15 years. With that said, I believe that your file extension is throwing off the compiler. The file extension should be .f, not .mod.

As far as your fatal error is concerned, I'm betting that your make file still has module.mod listed in it.
 
  • #3
Ok ... I found out how to solve my problem so I am going to post this for any other people out there who happen to run into the same thing:

note: I am using linux as my operating system, vim as my text editor, and fortran 95 as my compiler

on linux comand line:
Code:
vim main.f                       # create and save main.f note: main is the name of the main file 
vim mod_module.f                 # create and save mod_module.f note: moduel is the name of the module file and mod_ is a prefix type of extention
cat mod_module.f                 # you should see your code as an output
cat main.f                       # output code
f95 -o main mod_module.f main.f  # this will create an executable file
./main                           # execute the file created

Apparently fortran needs to execute everything all at once so it needs to create an executable file. This helped me get around the .mod problem because in order to create the executable file I only needed .f files. Note the module files must be compiled before the main file.

:smile:
 

What is a GFortran module?

A GFortran module is a separate unit of code that can be used to encapsulate data and procedures. It allows for better organization and reusability of code in Fortran programs.

How do I create a GFortran module?

To create a GFortran module, you need to use the `MODULE` keyword followed by the name of the module. Inside the module, you can declare variables, data types, and procedures that can be accessed by other parts of your program.

Why am I getting a "Module not found" error?

This error occurs when the compiler cannot find the specified module in the list of directories it is searching. Make sure that the module is in the correct directory and is being referenced correctly in your code.

Can I have multiple modules in a single Fortran program?

Yes, you can have multiple modules in a single Fortran program. This allows for better organization and separation of code, making it easier to maintain and update in the future.

How do I use a module in my Fortran program?

To use a module in your Fortran program, you need to use the `USE` keyword followed by the name of the module. This will give your program access to the variables and procedures defined in the module.

Similar threads

  • Programming and Computer Science
Replies
17
Views
4K
  • Programming and Computer Science
Replies
14
Views
1K
  • Programming and Computer Science
Replies
0
Views
508
  • Programming and Computer Science
Replies
1
Views
5K
  • Programming and Computer Science
Replies
5
Views
1K
  • Programming and Computer Science
Replies
4
Views
5K
  • Programming and Computer Science
Replies
1
Views
1K
  • Programming and Computer Science
Replies
4
Views
5K
  • Programming and Computer Science
Replies
1
Views
2K
  • Programming and Computer Science
Replies
13
Views
4K
Back
Top