首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么无法在ABAQUS子程序中调用MKL-FFTW3库

为什么无法在ABAQUS子程序中调用MKL-FFTW3库
EN

Stack Overflow用户
提问于 2019-11-05 11:27:04
回答 1查看 213关注 0票数 0

我找到了一种在https://software.intel.com/en-us/forums/intel-math-kernel-library/topic/720340的ABAQUS子程序中调用MKL库的方法。我按照下面的方法添加了

代码语言:javascript
复制
compile_fortran=[...'/Qmkl:sequential'...]

它可以和普通的MKL库很好地协同工作,比如degsv等等。但是当我想调用MKL-FFTW3库时,ABAQUS会显示错误,我会检查日志文件,错误如下

代码语言:javascript
复制
Intel(R) Visual Fortran Intel(R) 64 Compiler for applications running on 
Intel(R) 64, Version 19.0.1.144 Build 20181018
Copyright (C) 1985-2018 Intel Corporation.  All rights reserved.

End Compiling Abaqus/Standard User Subroutines
Begin Linking Abaqus/Standard User Subroutines
building library object standardU.lib and object standardU.exp
fft_elastic_subroutine.obj : error LNK2019: unresolved external symbol dfftw_plan_dft_3d,referenced in function fft3.R
fft_elastic_subroutine.obj : error LNK2019: unresolved external symbol dfftw_execute_dft,referenced in function fft3.R
fft_elastic_subroutine.obj : error LNK2019: unresolved external symbol dfftw_destroy_plan,referenced in function fft3.R
standardU.dll : fatal error LNK1120: 3 unresolved external symbols
Abaqus Error: Problem during linking - Abaqus/Standard User Subroutines.
This error may be due to a mismatch in the Abaqus user subroutine arguments.
These arguments sometimes change from release to release, so user subroutines used with a previous release of Abaqus 
may need to be adjusted.

我使用了Visual Studio 2017、英特尔Visual Fortran 2019、ABAQUS 2019。

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2019-11-09 10:52:36

所有这些FFTW3接口都集成到英特尔MKL中。它们在英特尔®64架构的mkl_intel_ilp64.lib、mkl_intel_ilp64_dll.lib mkl_intel_lp64.lib、mkl_intel_lp64_dll.lib和mkl_rt.lib中定义。

您可以尝试按照MKL Linker Adviser提示手动链接MKL。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58704056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档