我正在尝试在 Ubuntu 16 上编译 WRF,同时检查系统环境测试(Fortran 和 C 测试),我已成功完成测试 #1。但是当我尝试执行测试 2 时:我收到以下错误:
[gopi65@wise1 TESTS]$ gfortran TEST_2_fortran_only_free.f90
In file TEST_2_fortran_only_free.f90:4
USE, INTRINSIC :: ISO_C_BINDING, ONLY: c_char, c_ptr, c_int32_t, &
1
Error: Unclassifiable statement at (1)
In file TEST_2_fortran_only_free.f90:8
TYPE, BIND(C) :: r_info
1
Error: Unclassifiable statement at (1)
In file TEST_2_fortran_only_free.f90:9
INTEGER(C_INT64_T) :: offset
1
Error: Parameter 'c_int64_t' at (1) has not been declared or is a variable, which does not reduce to a constant expression
In file TEST_2_fortran_only_free.f90:10
INTEGER(C_INT64_T) :: data_offset
1
Error: Parameter 'c_int64_t' at (1) has not been declared or is a variable, which does not reduce to a constant expression
In file TEST_2_fortran_only_free.f90:11
INTEGER(C_INT32_T) :: data_count
1
Error: Parameter 'c_int32_t' at (1) has not been declared or is a variable, which does not reduce to a constant expression
In file TEST_2_fortran_only_free.f90:12
INTEGER(C_INT32_T) :: data_type
1
Error: Parameter 'c_int32_t' at (1) has not been declared or is a variable, which does not reduce to a constant expression
In file TEST_2_fortran_only_free.f90:13
CHARACTER(KIND=C_CHAR), DIMENSION(10) :: name
1
Error: Constant expression required at (1)
In file TEST_2_fortran_only_free.f90:14
CHARACTER(KIND=C_CHAR), DIMENSION(10) :: date
1
Error: Constant expression required at (1)
In file TEST_2_fortran_only_free.f90:15
END TYPE r_info
1
Error: Expecting END PROGRAM statement at (1)
In file TEST_2_fortran_only_free.f90:24
TYPE(bunch_of_stuff), ALLOCATABLE, DIMENSION(:) :: ddt_things
1
Error: Attribute at (1) is not allowed in a TYPE definition
In file TEST_2_fortran_only_free.f90:25
END TYPE outer_wrapper
1
Error: Derived type definition at (1) has no components
In file TEST_2_fortran_only_free.f90:27
TYPE(outer_wrapper), DIMENSION(15) :: combo
1
Error: Derived type 'outer_wrapper' at (1) is being used before it is defined
In file TEST_2_fortran_only_free.f90:29
ALLOCATE(combo(1)%ddt_things(10))
1
Error: Syntax error in ALLOCATE statement at (1)
In file TEST_2_fortran_only_free.f90:30
ALLOCATE(combo(2)%ddt_things(10))
1
Error: Syntax error in ALLOCATE statement at (1)
In file TEST_2_fortran_only_free.f90:31
ALLOCATE(combo(3)%ddt_things(10))
1
Error: Syntax error in ALLOCATE statement at (1)
[gopi65@wise1 TESTS]$
请问我可以得到解决方案吗?