【发布时间】:2017-07-03 21:57:32
【问题描述】:
我有一个第三方 C 库,静态格式 (.lib) 和动态格式 (.dll) 都有自己的导入库 (.lib)。它是 MKL(英特尔数学内核库)。我正在 Windows 7 上使用 cygiwn 64。
简而言之,我试图让一个在 POSIX 世界中工作的编译器与在 Windows 世界中编译的库对话,假设这是可能的。
我想将该库链接为我在 cygwin 中使用 g++ 编译的 C++ 可执行文件的一部分,并且我正在尝试使用导入库与 DLL 链接。
为了简单起见,我省略了文件路径的命令行导致未定义引用错误。
$ g++ main.obj mkl_intel_lp64_dll.lib mkl_sequential_dll.lib mkl_core_dll.lib -o paper.exe
mkl_intel_lp64_dll.lib: blah, blah, blah: undefined reference to `__GSHandlerCheck'
... and many other similar errors
有谁知道这是否可能,如果可以,怎么做?
谢谢
【问题讨论】:
-
@Mark,我不认为这是重复的。我试图让一个在 POSIX 世界中工作的编译器接受在 Windows 世界中编写的库,我什至不确定这是否可能。我没有找到关于这个话题的任何结论。
标签: gcc linker cygwin dllimport intel-mkl