回 帖 发 新 帖 刷新版面

主题:关于fortran的dll问题

各位高手,小弟初来乍到,请教两个关于fortran中dll的两个问题~ 请帮忙!谢谢!

1. 用fortran语言写了一个dll,在另一个项目中如何使用呢(如c中分为隐式和显式调用,fortran中没有头文件,如何实现呢)?

2. 不用dll时有两个f90文件,文件A是module,提供给文件B使用(文件A 中定义的变量,可以在文件B中直接访问)。先希望隐藏文件A的代码,将其做成dll,请问module可以直接作为dll么?文件A中的变量在文件B中仍然可以访问么?

再次感谢!!!

回复列表 (共7个回复)

沙发


请各位不吝赐教!

ps:问题说的不清楚么?

板凳


还是没有回复,这个问题不值得回答?还是说的不清楚?

再说一遍问题吧:fortran语言如何调用fortran语言写的dll呢?

3 楼


你用的是什么环境?是用gfortran还是cvf?不同环境有区别。

4 楼


如果是gfortran,可以按以下步骤:
对于文件add.f95
integer function add(a,b)
integer a,b
add=a+b
end function add

用gfortran编译成动态库libadd.so:
gfortran -c add.f95 -o add.o
gfortran -shared -o libadd.so add.o

libadd.so可以由main.95调用:
program main
integer a,b,add
a=1
b=2
print*,add(a,b)
end program main

gfortan -o main main.f95 libadd.so

如果是cvf之类需要增加编译指示语句,我忘记了。你自己可以查帮助文件。

5 楼


谢谢这么详细的例子!!

如果是cvf的话,有非命令的形式的么?在集成开发环境中怎么搞呢?

6 楼

2k中不能不对Fort怀着感激崇敬的心情不禁就想了解真实的他

7 楼

就是就是这个群体毁灭太可怕了有次用战列舰毁灭了48个部队也有次被电脑毁灭了14个部队从此以后满地图造要塞每次必停在要塞上

我来回复

您尚未登录,请登录后再回复。点此登录或注册