Fortran 编译程序时总提示lapack库中有个函数没有定义
来源:互联网 发布:淘宝指数查询软件 编辑:程序博客网 时间:2024/05/17 18:25
Fortran 编译程序时遇到这样一个问题:
提示sub.F90:(.text+0x839): undefined reference to `dgesvd_'错误。dgesvd是lapack库中的一个函数。先猜想库函数编译时编译选项与调用函数不一致,重新进行了一次编译,但问题依旧。为此,将PDAF_eofcovar.F90单独拷贝出来(其原来是在一个库中,链接时是链接库的),并将子程序改名以避免与链接库发生重名冲突。将改名后的文件信息写到Makefile中,重新编译,没问题了。百思不得其解。难道是链接时链接顺序不同造成的。因为后一种方法中.o文件是先链接的,而如果在库中调用该子程序则顺序靠后。根据此思路,对编译时调用库的次序进行了变动,由-L/home/somebody/lib/lapack/ -llapack -L/home/somebody/lib/blas/ -lblas -L../../../../lib -lalib变为-L../../../../lib -lalib -L/home/somebody/lib/lapack/ -llapack -L/home/somebody/lib/blas/ -lblas。再编译,OK了。
回想了下,此问题以前也遇到过,但好了伤疤就忘了疼了。所以记下来,说不定对别人也有帮助呢。
阅读全文
0 0
- Fortran 编译程序时总提示lapack库中有个函数没有定义
- settimeout提示函数没有定义
- getSupportFragmentManager提示没有定义
- 解决使用libpq时提示一系列SSL相关函数没有定义导致编译失败的问题
- 收件箱的提示为啥总没有
- 浏览器总提示本地没有安装jre
- codeblock无法编译,提示函数没有定义,但是函数已经 在头文件中定义了
- javascript开发排错一例——提示函数没有定义,而明明已经定义
- scala 定义Queue 对象时提示没有权限
- fortran函数
- Fortran 函数
- Linking LAPACK and BLAS libraries with Fortran and C code
- 在C++中引用Fortran Lapack矩阵工具
- vs2010编译时出现错误提示:error C2470: “xx”: 看起来像函数定义,但没有参数列表;跳过明显的函数体
- fortran 数组定义语句
- Fortran 高精度定义
- apache svn 403 forbidden 总提示没有访问权限
- apache svn 403 forbidden 总提示没有访问权限
- HTTP方法的安全性和幂等性
- 10. 机器学习基石-How can Machine Learn?
- iOS
- java 扫描登录
- Tensorflow基础:统一的数据存储格式
- Fortran 编译程序时总提示lapack库中有个函数没有定义
- combotree 禁止选中某一项
- caffe yolov2移植
- layer向子页面传递对象
- tensorflow基本概念
- AI challenger 场景分类 PyTorch 迁移学习 Places365-CNNs 启动代码
- 21 视图合并(view merge) --优化主题系列
- 静态代码块和构造器的执行顺序
- 2017全球产品经理大会特邀全球一线实战专家亲自指导