You will have received the FoX source code as a tar.gz file.
Unpack it as normal, and change directory into the top-level directory, FoX.
FoX requires a Fortran 95 compiler - not just Fortran 90. All currently available versions of Fortran compilers claim to support F95. If your favoured compiler is not listed as working below, I recommend the use of g95, which is free to download and use.
The following compilers are tested and are known to work:
The following compilers are tested and known to fail
Other compilers are untested; reports of their success or failure are welcomed.
In order to generate the Makefile, make sure that you have a Fortran compiler in your PATH
, and do:
config/configure
This should suffice for most installations. However:
If you have more than one Fortran compiler available, or it is not on your PATH
, you can force the choice by doing:
config/configure FC=/path/to/compiler/of/choice
It is possible that the configuration fails. In this case
By default the resultant files are installed under the objs directory. If you wish them to be installed elsewhere, you may do
config/configure --prefix=/path/to/installation
Note that the configure process encodes the current directory location in several places. If you move the FoX directory later on, you will need to re-run configure.
In order to compile the full library, now simply do:
make
This will build all the FoX modules, and all the examples. However, you may only be interested in building the libraries, or perhaps a subset of the libraries. In that case, the following targets are available:
wxml_lib
wcml_lib
A script is provided which will provide the appropriate compiler and linker flags for you; this will be created after configuration, in the top-level directory, and is called FoX-config
. It may be taken from there and placed anywhere.
FoX-config takes the following arguments:
--fcflags
: return flags for compilation--libs
: return flags for linking--wxml
: return flags for compiling/linking against wxml--wcml
: return flags for compiling/linking against wcmlFor compiling files against FoX, do the following:
f95 -c `FoX-config --fcflags` sourcefile.f90
For linking objects to the FoX library, do:
f95 -o program `FoX-config --libs` *.o
or similar, according to your compilation scheme.
Note that by default, FoX-config
assumes you are using all modules of the library. If you are only using part, then this can be specified by also passing the name of each module required, like so:
FoX-config --fcflags --wcml