问题描述
我在获取一些可以工作的fortran代码时遇到了一些麻烦。此代码使用Rogue Wave的外部库NUMERICAL_LIBRARIES,以实现带有复杂参数的贝塞尔函数。我试图与Rogue Wave联系,但到目前为止,他们都忽略了我的电子邮件。
我从https://jblevins.org/mirror/amiller/(toms644.zip)下载了一个bessel函数库,试图使开源版本正常工作。但是,我无法将此代码与提供给我的代码集成在一起。
使用cygwin中的此语句编译代码:
gfortran "pulse9_sili_oneTube - Copy.f90" -o "CBESSEL.F90" -o pressureWaveModel
给我这个错误声明:
/usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: /tmp/cc0Rqf3a.o:pulse9_sili_oneTube - Copy.f90:(.text+0x29d80): undefined reference to `cbesj_'
/tmp/cc0Rqf3a.o:pulse9_sili_oneTube - Copy.f90:(.text+0x29d80): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `cbesj_'
collect2: error: ld returned 1 exit status
我已将CBESSEL.F90文件链接到我的主文件:
INCLUDE "CBESSEL.F90"
USE Complex_Bessel
但是,我什至无法运行测试代码,所以也许我的编译器设置错误?编译测试代码给我一个错误,提示它无法打开模块文件,我是否需要以某种方式创建模块文件?此代码中没有有用的说明。
您能提供的任何帮助都是超级有用的!! 干杯。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)