vulkan: macOS dev static library is not universal
Describe your issue
I was linking against gst-vulkan-1.0
as provided by the 1.22.5 dev package, on an macOS universal app (-DCMAKE_OSX_ARCHITECTURES:STRING=x86_64;arm64
).
Expected Behavior
Linking should succeed.
Observed Behavior
CMake Tools reported the following warning on final linking:
[build] ld: warning: ignoring file /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a, file is universal (x86_64) but does not contain the arm64 architecture: /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a
Setup
- Operating System: macOS 12.7.5
- Device: Computer
- GStreamer Version: 1.22.5
- Command line: N/A
Steps to reproduce the bug
I can simplify testing this to:
- open terminal
- type
file /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a
- compare with the output of
file /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstreamer-1.0.a
How reproducible is the bug?
Always. The framework seems to be improperly packaged just for that one plugin.
Screenshots if relevant
N/A
Solutions you have tried
N/A
Related non-duplicate issues
Additional Information
Output of file /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a
❯ file /Library/Frameworks/GStreamer.frameworkVersions/1.0/lib/libgstvulkan-1.0.a
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a: Mach-O universal binary with 1 architecture: [x86_64:current ar archive random librarycurrent ar archive random library]
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a (for architecture x86_64): current ar archive random library
Output of file /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstreamer-1.0.a
❯ file /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstreamer-1.0.a
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstreamer-1.0.a: Mach-O universal binary with 2 architectures: [x86_64:current ar archive random librarycurrent ar archive random library] [arm64]
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstreamer-1.0.a (for architecture x86_64): current ar archive random library
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstreamer-1.0.a (for architecture arm64): current ar archive random library