microsoft / vcpkg

C++ Library Manager for Windows, Linux, and MacOS
MIT License
23.15k stars 6.38k forks source link

[intel-mkl] msvc msbuild linker failure #35671

Open reid-p opened 10 months ago

reid-p commented 10 months ago

Operating system

Windows 11

Compiler

MSVC

Steps to reproduce the behavior

Clean machine, with no intel mkl libs installed anywhere.

vcpkg install intel-mkl

build a project requiring a mkl function:

I'm using a custom static lib triplet with:
set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static)

Failure logs

1>Cmn64_Src_Dsp.obj : error LNK2019: unresolved external symbol DftiCreateDescriptor referenced in function "void __cdecl Dsp::Intel::FftSetupReal(struct DFTI_DESCRIPTOR * &,enum DFTI_CONFIG_VALUE,unsigned __int64)" (?FftSetupReal@Intel@Dsp@@YAXAEAPEAUDFTI_DESCRIPTOR@@W4DFTI_CONFIG_VALUE@@_K@Z)

and many more

Additional context

This occurs with the updated port file that installs intel-mkl into the vcpkg/installed folder. Libs are install into: vcpkg/installed//lib/intel64 But linking is done with: vcpkg/installed//lib/*.lib Copying the files from: vcpkg/installed//lib/intel64 to: vcpkg/installed//lib/

and rebuilding works correctly.

Henrik-Norgren commented 7 months ago

Ran into the same issue, "LNK2019: unresolved external symbol dsscreate referenced in function...."

Manifest mode ("dependencies": ["intel-mkl"]), x64-windows-static-md, manually copying .lib files work.

github-actions[bot] commented 1 month ago

This is an automated message. Per our repo policy, stale issues get closed if there has been no activity in the past 180 days. The issue will be automatically closed in 14 days. If you wish to keep this issue open, please add a new comment.