...
- fruit.f90 - fruit source code
- mod - directory used to store .mod files
- <your_module>.f90 - your actual module
- <your_module>_test.f90 - file with unit tests for your module
- fruit_geneator.rb - script used to generate test driver and basket files
- Makefile - used to compile and run all tests
Prepare environment
You will need to load module 'ruby' to use auto-generating scripts.
Code Block |
---|
module load ruby
module load itm-gcc/7.3.0 #gcc is needed to build ruby libraries |
Install requirements
FRUIT source code
Code Block |
---|
cd <project_dir>/test wget https://raw.githubusercontent.com/mortele/FRUIT/master/src/fruit.f90 |
...
Info |
---|
Code Block |
---|
sudo apt install ruby-full
ruby --version |
Rake
...
| ||
While compiling fruit.f90 an error "Logicals must be compared with .eqv. instead of .eq." may occure. In this case you will need to modify fruit.f90 lines 912 and 913 editing ".eq." to ".eqv.". This step is needed to be done only once, during first run. You can try to compile fruit.f90 at this step by calling gfortran compiler: |
Rake
Code Block |
---|
gem install rake --user-install |
...
Code Block |
---|
cd ~ nano .bashrc #add line at the end of file export PATH="~/.gem/ruby/3.1.0/bin:$PATH" #ctrl + O to save file #ctrl + X to exit nano source ~/.bashrc |
Bundler
Code Block |
---|
gem install bundler --user-install gem install json --user-install |
...
This is file with build instruction. You will not have to nanoto modify it unless you stick to project structure. Just copy it's content and save as Makefile in <project_dir>/test directory.
...
Code Block |
---|
cd <project_dir>/test make |
NOTE: While compiling fruit.f90 an error "Logicals must be compared with .eqv. instead of .eq." may occure. In this case you will need to modify fruit.f90 lines 912 and 913 editing ".eq." to ".eqv.". This step is needed to be done only once, during first run.
...