主题:fortran生成的dll包含其它库函数
jht529100
[专家分:0] 发布于 2010-03-16 10:04:00
请大侠们帮忙。我最近刚学fortran,在编程时用了imsl的一些库函数,然后生成dll让vb调用。这一切都很顺利。但只能在安装了fortran上的机子上运行。于是我猜测编译后的dll只能在有imsl.lib的环境下运行。那请问有没有不安装fortran,又能调用imsl函数的方法呢?
谢谢
回复列表 (共5个回复)
沙发
forcal [专家分:80] 发布于 2010-03-16 11:02:00
编译时链接静态库就可以。你链接的应该是动态库。
板凳
jht529100 [专家分:0] 发布于 2010-03-16 15:30:00
不好意思,不大懂forcal大侠的意思,我试过用lib,但vb好像不认。
3 楼
forcal [专家分:80] 发布于 2010-03-16 17:58:00
动态库(dll)文件,可以链接其他动态库文件,也可以链接静态库文件,你需要链接后者,否则需要把链接的所有dll文件一起打包。
如果你用的是CVF(Fortran6.x),工程->设置->Fortran->Libraries->Use Run-time,选static
若是IVF,也修改相应的设置。
4 楼
diy2005 [专家分:0] 发布于 2010-10-07 16:20:00
在ivf11中如何修改啊 找不到相应的设置啊
5 楼
prolee2008 [专家分:30] 发布于 2010-10-11 01:24:00
把imsl作为静态库调用就可以了
我来回复