Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[intel-mkl:x64-windows-static[-md]] build failure, more rigorously, need to define extra flag "MKL_LINK=static" for cmake integration #42834

Open
HuazyYang opened this issue Dec 21, 2024 · 0 comments
Labels
category:port-bug The issue is with a library, which is something the port should already support

Comments

@HuazyYang
Copy link

Operating system

Windows 10

Compiler

MSVC 19.29.30154.0

Steps to reproduce the behavior

`vcpkg install intel-mkl:x64-windows-static-md`
Succeed.

CMake configuration:

    "cmake.configureArgs": [
        "-DCMAKE_CXX_STANDARD=17",
        "-DVCPKG_TARGET_TRIPLET=x64-windows-static-md",
        "-DCMAKE_TOOLCHAIN_FILE=$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake"
    ],

and script

cmake_minimum_required(VERSION 3.20)

project(lithereal-dev)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(MKL CONFIG REQUIRED)

CMake config failed(see logs below).

But if `MKL_LINK` is set `static` explicitly:

    "cmake.configureArgs": [
        "-DCMAKE_CXX_STANDARD=17",
        "-DVCPKG_TARGET_TRIPLET=x64-windows-static-md",
        "-DMKL_LINK=static",
        "-DCMAKE_TOOLCHAIN_FILE=$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake"
    ],


CMake configuration stage will succeed. Maybe `MKL_LINK` is not properly set for triplets `x64-windows-static-md` and `x64-windows-static`(tested, same as `md` one).

Failure logs

CMake config failure:

[cmake] -- MKL_ARCH: None, set to ` intel64` by default
[cmake] -- MKL_ROOT E:/dev/vcpkg/installed/x64-windows-static-md
[cmake] -- MKL_LINK: None, set to ` dynamic` by default
[cmake] -- MKL_INTERFACE_FULL: None, set to ` intel_ilp64` by default
[cmake] -- MKL_THREADING: None, set to ` intel_thread` by default
[cmake] -- MKL_MPI: None, set to ` intelmpi` by default
[cmake] -- Found MKL: intelmpi  
[cmake] -- Found MKL: E:/dev/vcpkg/installed/x64-windows-static-md  
[cmake] -- Found MKL: E:/dev/vcpkg/installed/x64-windows-static-md/debug/lib/intel64/mkl_intel_ilp64.lib  
[cmake] -- Found MKL: E:/dev/vcpkg/installed/x64-windows-static-md/debug/lib/intel64/mkl_intel_thread.lib  
[cmake] CMake Error at E:/dev/vcpkg/installed/x64-windows-static-md/share/mkl/MKLConfig.cmake:103 (message):
[cmake]   mkl_intel_thread.*.dll not found
[cmake] Call Stack (most recent call first):
[cmake]   E:/dev/vcpkg/installed/x64-windows-static-md/share/mkl/MKLConfig.cmake:649 (mkl_message)
[cmake]   E:/dev/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package)
[cmake]   CMakeLists.txt:13 (find_package)
[cmake] 
[cmake] 
[cmake] -- Configuring incomplete, errors occurred!

Additional context

No response

@HuazyYang HuazyYang added the category:port-bug The issue is with a library, which is something the port should already support label Dec 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-bug The issue is with a library, which is something the port should already support
Projects
None yet
Development

No branches or pull requests

1 participant