-
Notifications
You must be signed in to change notification settings - Fork 544
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
Library is built with PipeWire support when targeting Windows using MinGW-w64 on Linux #1090
Comments
Because audio backends are assumed OS-agnostic unless necessary. For instance, JACK is typically considered as being for Linux, but it's certainly possible to use it on Windows (and some people do). PulseAudio can also be used on Windows, so there's no real reason to restrict PipeWire from being used on Windows either. Except for those that rely on OS-specific APIs, or there's no reliable way to check for them, many backends are left cross-platform in case someone has a need for one (and since most backends are loaded dynamically, having them enabled won't create a dependency issue should such builds be distributed). The issue here is more general, that How do you cross-compile? The provided # set env vars so that pkg-config will look in the appropriate directory for
# .pc files (as there seems to be no way to force using ${HOST}-pkg-config)
set(ENV{PKG_CONFIG_LIBDIR} "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
set(ENV{PKG_CONFIG_PATH} "") This works for me to suppress |
Makes sense. Pulse and JACK even have Windows-native packages in MSYS2's repos. Though PW doesn't have one (yet?).
I set I would hope CMake does the right thing and feeds pkg-config the correct paths, but I guess that might not be the case. |
I am working on a game engine project, targeting both Linux and Windows. Since I use Linux as my daily driver, I have the Linux version of MinGW-w64 installed on my machine.
I vendored all of the dependencies I could, including OpenAL Soft, using CMake's
FetchContent
module to make it easier to manage them and build them as part of the engine's own build process.CMake's output when generating the build files contains the following:
Trying to build the project obviously leads to OpenAL Soft failing to compile because MinGW-w64 can't find the PipeWire header files.
From what I can see in the CMakeLists, the PipeWire backend isn't properly gated behind a
if(NOT WIN32)
or similar branch.The text was updated successfully, but these errors were encountered: