使用 MinGW gfortran 编译时在 Windows 上无法识别 DLL

烟雾

我正在尝试链接一些库以使用 Windows 上 MinGW 中的 gfortran 实现来创建可执行文件。我有 .dll 和 .lib 形式的库文件,它们在路径上可用。当我尝试编译我的程序时,出现如下错误:

libblas.dll: file not recognized: File format not recognized

我的输入如下:

gfortran -O3  -g dependency.o testmain.o -o ../testrun.exe -lblas -llapack

blas 和 lapack 是我想要链接的库,它们在路径上以 libblas.dll 和 liblapack.dll 的形式提供。其他库似乎以 *.a 或 *.dll.a 文件的形式提供,但我不确定如何将我想要使用的库转换为该格式。

为什么会发生这种情况,有没有办法解决这个问题来创建一个有效的可执行文件?

烟雾

正如@jacob 在问题评论中所指出的,dll 版本是 64 位,而编译器(MinGW)默认为 32 位版本。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Windows上使用gfortran创建DLL

glog无法在Windows上使用MinGW编译

尝试在Windows 8上使用Mingw编译Lua时出错

使用MinGW在Windows上编译QJson

如何使用mingw在Windows上编译rtaudio?

如何通过CMake使用MinGW gfortran构建/编译Fortran?

在Fortran中调用外部DLL并使用gfortran进行编译时,区分大小写问题

使用Windows上的程序在Linux上的Mingw编译错误

在 cygwin/mingw 上编译 windows

尝试在Windows上执行C ++时出错(通过MinGW编译)

无法链接到Windows MinGW的libnanomsg,使用MXE交叉编译

无法在Windows的MinGW上使用SDL

在Windows中使用make编译C(MinGW)

Windows 上的 MINGW64 无法识别 Control-D

MSMPI就地MPI_Allreduce无法与MinGW-w64 gfortran一起使用

使用CMake和MinGW在Windows上使用Boost 1.68.0编译C ++

将mingw dll与Windows dll链接

使用 mingw 遵循简单的 C++ DLL 教程时出错

在带有mingw32的Windows上编译时产生“ DllMainCRTStartup @ 12”的多个定义

无法运行使用clang / lld / mingw编译的Windows二进制文件

在Windows 7(64位)上使用Cython和MinGW编译Python 3.5代码

C ++:如何在Windows 10上使用编译器MinGW 9.2.0安装OpenCV

如何使用 Python.h 和 MinGW 在 Windows 10 上编译调用 Python 方法的 C 文件

在Linux上使用Mingw编译GMP库

Windows 上的 Boost::process - 使用 MinGW?

错误:无法在 R 中加载 gfortran 编译的 DLL(“符号名称不在加载表中”)

使用MINGW构建JNI DLL

使用gfortran从DLL导出COMMON块

使用gfortran编译f77内部函数时出错