fortran C++链接库

问题描述:

我一直在尝试一段时间来运行一个链接到使用C++例程的库的fortran代码。该代码非常简单:fortran C++链接库

program simple_program 
implicit none 
#include "looptools.h" 
call ltini 
print *, B0(1000D0, 50D0, 80D0) 
call ltexi 
end 

据开发者,如果你有

gfortran -I$LT/include example.F -L$LT/lib -looptools 

我甚至编译时加入-lstdC++在该行的末尾编译它应该工作。 LT变量设置为正确的目录(安装程序包和库的位置)。问题在于它似乎忽略了包中包含的C++函数,所以我认为我没有正确链接fortran和C++库。因为这是一个非常简单的例子,我按照开发者的建议编译,我想也许它与我的ubuntu库版本有关,用于链接f和C++?

+0

生成的代码兼容您可能有C++错位函数名的一个问题码。 – 2014-11-05 20:52:47

+0

尝试使用'gfortran -c example.F',然后'g ++ example.o .... -lgfortran',其中的省略号就是您已拥有的其他所有元素。 – 2014-11-05 23:26:08

+1

你有一个叫'looptools.h'的头文件叫做'ooptools'?库存档的实际文件名是什么? – IanH 2014-11-06 02:08:43

的问题得到解决在命令行末尾添加-ff2c,以产生设计为与由G77和F2C