Fortran 4.7.2/4.8.1错误:通用';vode&x27;at(1)
我试着编译导师给我的fortran程序 当我使用Mac OS X 10.8.4上的gfortran 4.7.2和Arch Linux x64上的gfortran 4.8.1执行此操作时,它不希望编译 我已经构建了一个最小的工作示例来重放错误。不幸的是,它非常大,所以我把它放在github上: 我可以在Ubuntu12.04和gfortran 4.6.3下编译这段代码 我查看了GCC4.7的新闻稿,没有发现任何线索 你能解释一下为什么gfortran不想编译这段代码吗 很抱歉,最初忘记将错误放在此处:Fortran 4.7.2/4.8.1错误:通用';vode&x27;at(1),fortran,gfortran,Fortran,Gfortran,我试着编译导师给我的fortran程序 当我使用Mac OS X 10.8.4上的gfortran 4.7.2和Arch Linux x64上的gfortran 4.8.1执行此操作时,它不希望编译 我已经构建了一个最小的工作示例来重放错误。不幸的是,它非常大,所以我把它放在github上: 我可以在Ubuntu12.04和gfortran 4.6.3下编译这段代码 我查看了GCC4.7的新闻稿,没有发现任何线索 你能解释一下为什么gfortran不想编译这段代码吗 很抱歉,最初忘记将错误放在此
main.f90:8.75:
call vode(istate, lambda_fcn, dummy_jac, lambda, x_tmp, x_end, tol, pm)
1
Error: There is no specific subroutine for the generic 'vode' at (1)
make: *** [all] Error 1
我的回答和乔治提到的问题中的评论涵盖了你的问题。参数的类型、种类和等级完全匹配。要添加新的内容,我建议您尝试直接调用特定的过程。然后,类型检查器将投诉错误的实际参数,您将看到更多详细信息 就你而言
generic2.f90:81.24:
call d_vode(istate, lambda_fcn, dummy_jac, lambda, x_tmp, x_end, tol, pm)
1
Error: Interface mismatch in dummy procedure 'f' at (1): Shape mismatch in dimension 1 of argument 'y'
这是相当自我解释的。您的虚拟过程与接口不兼容。您正在混合假定大小、常量大小和显式大小数组。您必须严格按照界面操作。您可以添加错误消息的其余部分吗?文件/行号会很好。您会遇到什么类型的错误?重复: