Fortran Coder

查看: 28978|回复: 10
打印 上一主题 下一主题

[数学库] 在IVF中如何调用LAPACK的函数dgesv

[复制链接]

12

帖子

2

主题

0

精华

入门

F 币
67 元
贡献
32 点
跳转到指定楼层
楼主
发表于 2014-9-1 16:17:21 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
之前用linux,调用函数只需要在makefile中写。现在想在IVF 2013调用LAPACK的函数DGESV。尝试过以下方法:1.在把llapack函数包加入到现有工程,但是一直找不到合适的添加路径指导。请问应该怎么操作??
2.DGESV会调用lapack的dgetrf和dgetrs。直接把这三个函数的源文件放到工程中,显示有冲突。冲突如下:


大虾们有空指点指点。

QQ截图20140901161629.png (27.97 KB, 下载次数: 464)

QQ截图20140901161629.png
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

12

帖子

2

主题

0

精华

入门

F 币
67 元
贡献
32 点
沙发
 楼主| 发表于 2014-9-1 17:47:51 | 显示全部楼层
fcode 发表于 2014-9-1 17:13
IVF 应该包含 MKL,直接使用 MKL 既可。
你可以参考本论坛(本版块)里的其他几个求助帖。 ...

没有找到类似的啊。不过还是谢了

12

帖子

2

主题

0

精华

入门

F 币
67 元
贡献
32 点
板凳
 楼主| 发表于 2014-9-1 23:59:05 | 显示全部楼层
vvt 发表于 2014-9-1 19:01
http://fcode.cn/bbs/thread-265-1-1.html

多谢大侠。已经完全按照论坛有的方法改了,结果出了一个error #7881。是不是只能去跟intel要新版的mod了。。。

12

帖子

2

主题

0

精华

入门

F 币
67 元
贡献
32 点
地板
 楼主| 发表于 2014-9-2 08:25:16 | 显示全部楼层
本帖最后由 housechen 于 2014-9-2 09:39 编辑
楚香饭 发表于 2014-9-2 00:12
错误提示更详细一点

Error        1         error #7881: This module file was generated for a different platform or by an incompatible compiler or compiler release. It cannot be read.   [MKL95_LAPACK]       DGESV.f90        3        

已经根据之前的帖子。添加了环境变量,改了include和lib的路径,在工程中声明use mod。还有可能是哪些没想到的错误?

12

帖子

2

主题

0

精华

入门

F 币
67 元
贡献
32 点
5#
 楼主| 发表于 2014-9-3 08:24:49 | 显示全部楼层
楚香饭 发表于 2014-9-3 05:56
你安装的 MKL 与你的 ivf 版本不匹配吧。你是后来下载的 MKL 安装的吗?

我用的intel visual fortran composer xe 2013,应该内置有mkl模块。。

12

帖子

2

主题

0

精华

入门

F 币
67 元
贡献
32 点
6#
 楼主| 发表于 2014-9-3 20:26:20 | 显示全部楼层
本帖最后由 housechen 于 2014-9-3 20:36 编辑
楚香饭 发表于 2014-9-3 08:27
那可能是 32 位或 64 位的选择不对。出这个错误,就是函数库的版本不正确。比如版本,平台,位数。
或者 ...

自己解决了。dgesv不是用fortran95写的,不能用这个方式call.改成call gesv就可以了。include和lib的设置按照论坛的指导即可。

评分

参与人数 1F 币 +9 贡献 +9 收起 理由
fcode + 9 + 9 很给力!

查看全部评分

您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-23 20:22

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表