When I compiled fabm-ersem, I used 《uk-fvcom-FABM-ERSEM\uk-fvcom-FABM-ERSEM\FVCOM_source》 to cover the FVCOM4.3/FVCOM_source , and then "make" , the error as follow:
d_fabm_3D.F > mod_fabm_3D.f90
mpif90 -c -O3 -I/usr/local/src/fvcom43-master/FVCOM_source/libs/install/include -I/usr/local/src/fabm-0.96.0/src/build/include mod_fabm_3D.f90
mod_fabm_3D.f90(19): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [YAML_TYPES]
USE yaml_types
------^
mod_fabm_3D.f90(20): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [YAML]
USE yaml,yaml_parse=>parse,yaml_error_length=>error_length
------^
mod_fabm_3D.f90(1907): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [YAML_TYPES]
USE yaml_types
-------^
mod_fabm_3D.f90(1908): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [YAML]
USE yaml,yaml_parse=>parse,yaml_error_length=>error_length
-------^
mod_fabm_3D.f90(1913): error #6463: This is not a derived type name. [TYPE_NODE]
CLASS (type_node), POINTER :: node
----------^
mod_fabm_3D.f90(1915): error #6498: The use-name for this local-name is not defined. [YAML_ERROR_LENGTH]
CHARACTER(LEN=yaml_error_length) :: yaml_error
-----------------^
mod_fabm_3D.f90(1915): error #6223: A specification expression is invalid. [YAML_ERROR_LENGTH]
CHARACTER(LEN=yaml_error_length) :: yaml_error
-----------------^
mod_fabm_3D.f90(1916): error #6457: This derived type name has not been declared. [TYPE_ERROR]
TYPE (type_error), POINTER :: config_error
---------^
mod_fabm_3D.f90(1917): error #6457: This derived type name has not been declared. [TYPE_DICTIONARY]
CLASS (type_dictionary), POINTER :: variablemap
----------^
mod_fabm_3D.f90(1918): error #6457: This derived type name has not been declared. [TYPE_KEY_VALUE_PAIR]
TYPE (type_key_value_pair),POINTER :: pair
---------^
mod_fabm_3D.f90(20): error #6581: Unresolved rename. [YAML_PARSE]
USE yaml,yaml_parse=>parse,yaml_error_length=>error_length
-----------^
mod_fabm_3D.f90(20): error #6581: Unresolved rename. [YAML_ERROR_LENGTH]
USE yaml,yaml_parse=>parse,yaml_error_length=>error_length
-----------------------------^
mod_fabm_3D.f90(1927): error #6404: This name does not have a type, and must have an explicit type. [NODE]
node => yaml_parse(PATH,yaml_unit,yaml_error)
---^
mod_fabm_3D.f90(1927): error #6404: This name does not have a type, and must have an explicit type. [YAML_PARSE]
node => yaml_parse(PATH,yaml_unit,yaml_error)
-----------^
mod_fabm_3D.f90(1927): error #6678: When the target is an expression it must deliver a pointer result. [YAML_PARSE]
node => yaml_parse(PATH,yaml_unit,yaml_error)
-----------^
mod_fabm_3D.f90(1929): error #6106: Not a valid argument for ASSOCIATE or SELECT TYPE. [ASSOCIATED]
IF (.not.ASSOCIATED(node)) CALL FATAL_ERROR('No configuration information found in '//PATH//'.')
-----------------------^
mod_fabm_3D.f90(1938): error #8247: Selector in SELECT TYPE statements must be polymorphic value.
SELECT TYPE (node)
---^
mod_fabm_3D.f90(1939): error #6457: This derived type name has not been declared. [TYPE_DICTIONARY]
CLASS IS (type_dictionary)
-------------^
mod_fabm_3D.f90(1940): error #6404: This name does not have a type, and must have an explicit type. [VARIABLEMAP]
variablemap => node%get_dictionary('variables',required=.false.,error=config_error)
------^
mod_fabm_3D.f90(1940): error #6460: This is not a field name that is defined in the encompassing structure. [GET_DICTIONARY]
variablemap => node%get_dictionary('variables',required=.false.,error=config_error)
--------------------------^
mod_fabm_3D.f90(1940): error #6678: When the target is an expression it must deliver a pointer result. [NODE]
variablemap => node%get_dictionary('variables',required=.false.,error=config_error)
---------------------^
mod_fabm_3D.f90(1941): error #6404: This name does not have a type, and must have an explicit type. [CONFIG_ERROR]
if (associated(config_error)) CALL FATAL_ERROR(PATH//': '//TRIM(config_error%message))
---------------------^
mod_fabm_3D.f90(1941): error #6106: Not a valid argument for ASSOCIATE or SELECT TYPE. [ASSOCIATED]
if (associated(config_error)) CALL FATAL_ERROR(PATH//': '//TRIM(config_error%message))
---------------------^
mod_fabm_3D.f90(1941): error #6460: This is not a field name that is defined in the encompassing structure. [MESSAGE]
if (associated(config_error)) CALL FATAL_ERROR(PATH//': '//TRIM(config_error%message))
-----------------------------------------------------------------------------------^
mod_fabm_3D.f90(1941): error #6362: The data types of the argument(s) are invalid. [TRIM]
if (associated(config_error)) CALL FATAL_ERROR(PATH//': '//TRIM(config_error%message))
----------------------------------------------------------------------^
mod_fabm_3D.f90(1942): error #6404: This name does not have a type, and must have an explicit type. [PAIR]
pair => variablemap%first
------^
mod_fabm_3D.f90(1942): error #6460: This is not a field name that is defined in the encompassing structure. [FIRST]
pair => variablemap%first
--------------------------^
mod_fabm_3D.f90(1942): error #6796: The variable must have the TARGET attribute or be a subobject of an object with the TARGET attribute, or it must have the POINTER attribute. [VARIABLEMAP]
pair => variablemap%first
--------------^
mod_fabm_3D.f90(1943): error #6106: Not a valid argument for ASSOCIATE or SELECT TYPE. [ASSOCIATED]
DO WHILE (ASSOCIATED(pair))
---------------------------^
mod_fabm_3D.f90(1944): error #6460: This is not a field name that is defined in the encompassing structure. [VALUE]
SELECT TYPE (value=>pair%value)
----------------------------------^
mod_fabm_3D.f90(2029): catastrophic error: Too many errors, exiting
compilation aborted for mod_fabm_3D.f90 (code 1)
make: *** [mod_fabm_3D.o] 错误 1
who can help me how to solve this promblems.thanks