libsdl-org / SDL_mixer

An audio mixer that supports various file formats for Simple Directmedia Layer.
zlib License
432 stars 147 forks source link

MSVC_RUNTIME_LIBRARY value 'MultiThreadedDLL' not known for this ASM #583

Open TakWolf opened 10 months ago

TakWolf commented 10 months ago
CMake Error in cmake-build-release/_deps/sdl3_mixer-src/external/wavpack/CMakeLists.txt:
  MSVC_RUNTIME_LIBRARY value 'MultiThreadedDLL' not known for this ASM
  compiler.

Windows 10 Visual Studio/2022/Community Use the latest node: de0f62abbcb41c64e0cb1045a521e2deeb562fb7

include(FetchContent)

FetchContent_Declare(SDL3
        GIT_REPOSITORY https://github.com/libsdl-org/SDL.git
        GIT_TAG 3a219caf3da11df9feed819be6d2b08c10d44cfc
)
FetchContent_MakeAvailable(SDL3)

FetchContent_Declare(SDL3_mixer
        GIT_REPOSITORY https://github.com/libsdl-org/SDL_mixer.git
        GIT_TAG de0f62abbcb41c64e0cb1045a521e2deeb562fb7
)
FetchContent_MakeAvailable(SDL3_mixer)

add_executable(${PROJECT_NAME}
        src/main.cpp
)
target_link_libraries(${PROJECT_NAME} PRIVATE SDL3::SDL3)
target_link_libraries(${PROJECT_NAME} PRIVATE SDL3_mixer::SDL3_mixer)
target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_23)
TakWolf commented 10 months ago

It seems to be related to the shared libraries build.

Use the following options will not generate errors. (it has also become a static link)

set(BUILD_SHARED_LIBS OFF)
set(SDL_SHARED OFF)
set(SDL_STATIC ON)
set(SDL3MIXER_VENDORED OFF)