Compaq Visual Fortran - 链接.LIB文件时崩溃

时间:2012-10-26 22:08:09

标签: linker fortran intel-fortran

当我使用Compaq Visual Fortran编译时,我得到这些错误(当它启动链接器进程时)应该位于我认为已添加到工作区的.lib文件中:

X30XFULL.OBJ : error LNK2001: unresolved external symbol _BCON@4
X30XFULL.OBJ : error LNK2001: unresolved external symbol _RCON@16

根据我google的地方,看起来Compaq Visual Fortran(版本6,FYI)找不到库文件......

我的主要问题是,我该如何使用它们?可能还有其他丢失的文件吗?这是我尝试过的:

  • 右键单击 - >在FileView窗口中添加文件
  • 在项目 - >设置下,单击链接选项卡,在输入类别下,在对象/库模块(bprop.lib rprop.lib)下添加库文件,并使附加库路径指向文件所在的位置是。我也在“资源”选项卡下执行了此操作,并在其中显示“其他资源包含目录”,我将这些文件所在的目录放在其中。
  • 为了覆盖我的基础,我还将这些文件放在项目工作区文件的位置,这些文件将生成编译的可执行文件,几乎任何我能想到的地方,CVF可能会查找以找到这些文件。

一点背景:

我有这个在90年代最后编译的Fortran可执行文件。根据我的研究,它是一个16位编译的,不适用于64位机器。

原始代码至少从我们可以收集到的16位编译库中获得。没有原始编译器,我们无法弄清楚如何查看或使用它们。我们还有一个(半)等效的库文件,它实际上是一个.FOR文件。据我们所知,BPROP.FOR和BPROP.LIB可以是同一个文件(它们位于相同的源代码区域中)。如果我们使用BPROP.FOR文件,程序可以编译,但是我们遇到的结果有问题,我们已经追溯到该文件中使用/收集/处理的信息。

但是,我们确实有32位版本(我们认为)是相同的.lib文件。所以,我们正在尝试使用它,这是用于编译Fortran可执行文件的结果,导致上述错误。

1 个答案:

答案 0 :(得分:0)

找到答案,至少对我而言。我不知道如果其他人找到这些答案,那么推断是多么容易,但这就是我解决它的方法。

使用旧的Fortran库,我所要做的就是将它们添加到FileList视图中,该视图包含所有不同的fortran文件(.FOR等)。我没有像我提到的那样在设置中添加这些库,但这也可以。除此之外,我不需要添加任何额外的声明或任何类似的声明。

我们所发现的是调用那些.LIB文件的相关函数(BCON和RCON)需要一个额外的参数。我发现这一点的唯一方法是检查使用这些库的其他源代码,所以如果有人像我一样被卡住,那将是一个很好的起点。或者,如果您可以在十六进制编辑器中读取.lib文件,则可以创建函数及其参数。

当然,如果您拥有所述参数的原始源代码,那就更好了。 :)