MinGW,链接到 Windows 上的 dll

Posted

技术标签:

【中文标题】MinGW,链接到 Windows 上的 dll【英文标题】:MinGW, linking to a dll on Windows 【发布时间】:2014-12-11 10:53:01 【问题描述】:

我正在尝试在示例程序中使用从相机供应商处获得的库。我有一个用于库的 .dll 和一个 .lib 文件。我的编译命令是:

g++  -o "Win32App.exe" -L"..\..\SK develop\SK91GigE-WIN\Lib" obj/winmain.o obj/callbacks.o obj/resource.o -s -lcomctl32 -Wl,--subsystem,windows -lSK91GigE_x64

我得到:

obj/winmain.o:winmain.cpp:(.text+0x292): undefined reference to `SK_LOADDLL'
collect2.exe: error: ld returned 1 exit status

查看带有 nm 显示的 .lib:

BFD: SK91GigE_x64.lib(SK91GigE_x64.dll): Recognised but unhandled machine type (0x8664) in Import Library Format archive 
nm: SK91GigE_x64.dll: File format not recognized

对于它输出的 dll:

nm: SK91GigE_x64.dll: File format not recognized

有什么想法可以修改该库以包含它吗?

【问题讨论】:

您使用的是 64 位 mingw 对吗? 【参考方案1】:

windows 路径变量指向 32 位 MinGW。设置64位版MinGW的路径解决了这个问题。我没查过

【讨论】:

以上是关于MinGW,链接到 Windows 上的 dll的主要内容,如果未能解决你的问题,请参考以下文章

从 MinGW 链接到 OpenCV 的问题

带有 MiNGW 的 Windows 上的 Python D-Bus

在 Windows 上使用 CMake 和 MinGW 链接 LLVM 库

Windows 8 上的 MinGW

使用 MinGW 在 Windows 上构建 GLEW 1.7.0

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