gpu: "duplicate symbol" linker error on some OS #580
Labels
No labels
CI
all
basisu
blog
bug
build
contributor-friendly
core
correctness
deferred
dev
direct3d-headers
docs
driver-os-issue
duplicate
dxcompiler
editor
examples
experiment
feature-idea
feedback
flac
freetype
gamemode
gkurve
glfw
gpu
gpu-dawn
harfbuzz
help welcome
in-progress
infrastructure
invalid
libmach
linux-audio-headers
long-term
mach
mach.gfx
mach.math
mach.physics
mach.testing
model3d
needs-triage
object
opengl-headers
opus
os/linux
os/macos
os/wasm
os/windows
package-manager
priority
proposal
proposal-accepted
question
roadmap
slipped
stability
sysaudio
sysgpu
sysjs
validating-fix
vulkan-zig-generated
wayland-headers
website
wontfix
wrench
www
x11-headers
xcode-frameworks
zig-update
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
hexops/mach#580
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
mach/gpuexports its own WebGPU C API, which conflicts with Dawn's symbols on some OSes.Not all, because on at least macOS the behavior is to override symbols (interestingly).
This is preventing https://github.com/machlibs/imgui from running on some platforms.
Just want to be on the record 😄. Will gladly assist by testing on my Linux (NixOS 22.05 "stable") machine.
OK, still an issue. Taking some notes for myself:
wgpuCreateInstanceis defined inwebgpu_dawn_native_proc.cppand should also be excluded from builds by default: https://github.com/hexops/dawn/blob/generated-2022-08-06/out/Debug/gen/src/dawn/native/webgpu_dawn_native_proc.cppJust adding in case it helps. These are the symbols lld complains about in my build:
i ran imgui example with latest
machand no errorSeems resolved; opened https://github.com/hexops/mach/issues/593 to confirm imgui bindings work on every OS.