0

我在通过 f2py 编译时遇到问题。我有一个 f90 模块,里面有几个子例程。到目前为止,它一直在编译,以便在 python 脚本中使用。但是,现在当我尝试编译它并构建它时,它会抱怨这个错误:

build/src.macosx-10.5-x86_64-2.7/PyCosmology/sims/fort/read_sim-f2pywrappers2.f90:355.17:

   allocate(d())
             1
Error: Shape specification for allocatable scalar at (1)

它还有另外两个错误,但这些只是由于d()这里没有正确分配造成的。您可以看到它正在编译的文件是 f2py 包装器。更奇怪的是,当我真正查看它指向的包装文件时,第 355 行实际上是:

       allocate(d(s(1),s(2)))

所以我不知道为什么编译器告诉我分配语句中没有形状说明符。正因为如此,我不知道如何解决它!

请注意,自从上次正确编译后,我对模块进行了一些更改,但发生此错误的数组我根本没有触及,我也没有触及它存在的特定子例程。

4

1 回答 1

0

弄清楚了。

我试图分配给一个整数。对不起。

于 2012-07-25T02:56:01.610 回答