gpu: "duplicate symbol" linker error on some OS #580

Closed
opened 2022-10-14 16:41:19 +00:00 by emidoots · 5 comments
emidoots commented 2022-10-14 16:41:19 +00:00 (Migrated from github.com)

mach/gpu exports 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.

`mach/gpu` exports 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.
renerocksai commented 2022-10-15 11:45:41 +00:00 (Migrated from github.com)

Just want to be on the record 😄. Will gladly assist by testing on my Linux (NixOS 22.05 "stable") machine.

Just want to be on the record :smile:. Will gladly assist by testing on my Linux (NixOS 22.05 "stable") machine.
emidoots commented 2022-10-17 21:46:14 +00:00 (Migrated from github.com)

OK, still an issue. Taking some notes for myself:

  1. I should remove https://github.com/hexops/mach/blob/main/libs/gpu/src/dawn_webgpu_h.zig now
  2. wgpuCreateInstance is defined in webgpu_dawn_native_proc.cpp and 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.cpp
OK, still an issue. Taking some notes for myself: 1. I should remove https://github.com/hexops/mach/blob/main/libs/gpu/src/dawn_webgpu_h.zig now 2. `wgpuCreateInstance` is defined in `webgpu_dawn_native_proc.cpp` and 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.cpp
renerocksai commented 2022-10-17 22:30:46 +00:00 (Migrated from github.com)

Just adding in case it helps. These are the symbols lld complains about in my build:

ld.lld: error: duplicate symbol: wgpuCreateInstance
ld.lld: error: duplicate symbol: wgpuGetProcAddress
ld.lld: error: duplicate symbol: wgpuAdapterCreateDevice
ld.lld: error: duplicate symbol: wgpuAdapterEnumerateFeatures
ld.lld: error: duplicate symbol: wgpuAdapterGetLimits
ld.lld: error: duplicate symbol: wgpuAdapterGetProperties
ld.lld: error: duplicate symbol: wgpuAdapterHasFeature
ld.lld: error: duplicate symbol: wgpuAdapterRequestDevice
ld.lld: error: duplicate symbol: wgpuAdapterReference
ld.lld: error: duplicate symbol: wgpuAdapterRelease
ld.lld: error: duplicate symbol: wgpuBindGroupSetLabel
ld.lld: error: duplicate symbol: wgpuBindGroupReference
ld.lld: error: duplicate symbol: wgpuBindGroupRelease
ld.lld: error: duplicate symbol: wgpuBindGroupLayoutSetLabel
ld.lld: error: duplicate symbol: wgpuBindGroupLayoutReference
ld.lld: error: duplicate symbol: wgpuBindGroupLayoutRelease
ld.lld: error: duplicate symbol: wgpuBufferDestroy
ld.lld: error: duplicate symbol: wgpuBufferGetConstMappedRange
ld.lld: error: duplicate symbol: wgpuBufferGetMappedRange
ld.lld: error: duplicate symbol: wgpuBufferGetSize
ld.lld: error: duplicate symbol: wgpuBufferGetUsage
ld.lld: error: duplicate symbol: wgpuBufferMapAsync
ld.lld: error: duplicate symbol: wgpuBufferSetLabel
ld.lld: error: duplicate symbol: wgpuBufferUnmap
ld.lld: error: duplicate symbol: wgpuBufferReference
ld.lld: error: duplicate symbol: wgpuBufferRelease
ld.lld: error: duplicate symbol: wgpuCommandBufferSetLabel
ld.lld: error: duplicate symbol: wgpuCommandBufferReference
ld.lld: error: duplicate symbol: wgpuCommandBufferRelease
ld.lld: error: duplicate symbol: wgpuCommandEncoderBeginComputePass
ld.lld: error: duplicate symbol: wgpuCommandEncoderBeginRenderPass
ld.lld: error: duplicate symbol: wgpuCommandEncoderClearBuffer
ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyBufferToBuffer
ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyBufferToTexture
ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyTextureToBuffer
ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyTextureToTexture
ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyTextureToTextureInternal
ld.lld: error: duplicate symbol: wgpuCommandEncoderFinish
ld.lld: error: duplicate symbol: wgpuCommandEncoderInjectValidationError
ld.lld: error: duplicate symbol: wgpuCommandEncoderInsertDebugMarker
ld.lld: error: duplicate symbol: wgpuCommandEncoderPopDebugGroup
ld.lld: error: duplicate symbol: wgpuCommandEncoderPushDebugGroup
ld.lld: error: duplicate symbol: wgpuCommandEncoderResolveQuerySet
ld.lld: error: duplicate symbol: wgpuCommandEncoderSetLabel
ld.lld: error: duplicate symbol: wgpuCommandEncoderWriteBuffer
ld.lld: error: duplicate symbol: wgpuCommandEncoderWriteTimestamp
ld.lld: error: duplicate symbol: wgpuCommandEncoderReference
ld.lld: error: duplicate symbol: wgpuCommandEncoderRelease
ld.lld: error: duplicate symbol: wgpuComputePassEncoderDispatchWorkgroups
ld.lld: error: duplicate symbol: wgpuComputePassEncoderDispatchWorkgroupsIndirect
ld.lld: error: duplicate symbol: wgpuComputePassEncoderEnd
ld.lld: error: duplicate symbol: wgpuComputePassEncoderInsertDebugMarker
ld.lld: error: duplicate symbol: wgpuComputePassEncoderPopDebugGroup
ld.lld: error: duplicate symbol: wgpuComputePassEncoderPushDebugGroup
ld.lld: error: duplicate symbol: wgpuComputePassEncoderSetBindGroup
ld.lld: error: duplicate symbol: wgpuComputePassEncoderSetLabel
ld.lld: error: duplicate symbol: wgpuComputePassEncoderSetPipeline
ld.lld: error: duplicate symbol: wgpuComputePassEncoderWriteTimestamp
ld.lld: error: duplicate symbol: wgpuComputePassEncoderReference
ld.lld: error: duplicate symbol: wgpuComputePassEncoderRelease
ld.lld: error: duplicate symbol: wgpuComputePipelineGetBindGroupLayout
ld.lld: error: duplicate symbol: wgpuComputePipelineSetLabel
ld.lld: error: duplicate symbol: wgpuComputePipelineReference
ld.lld: error: duplicate symbol: wgpuComputePipelineRelease
ld.lld: error: duplicate symbol: wgpuDeviceCreateBindGroup
ld.lld: error: duplicate symbol: wgpuDeviceCreateBindGroupLayout
ld.lld: error: duplicate symbol: wgpuDeviceCreateBuffer
ld.lld: error: duplicate symbol: wgpuDeviceCreateCommandEncoder
ld.lld: error: duplicate symbol: wgpuDeviceCreateComputePipeline
ld.lld: error: duplicate symbol: wgpuDeviceCreateComputePipelineAsync
ld.lld: error: duplicate symbol: wgpuDeviceCreateErrorBuffer
ld.lld: error: duplicate symbol: wgpuDeviceCreateErrorExternalTexture
ld.lld: error: duplicate symbol: wgpuDeviceCreateErrorTexture
ld.lld: error: duplicate symbol: wgpuDeviceCreateExternalTexture
ld.lld: error: duplicate symbol: wgpuDeviceCreatePipelineLayout
ld.lld: error: duplicate symbol: wgpuDeviceCreateQuerySet
ld.lld: error: duplicate symbol: wgpuDeviceCreateRenderBundleEncoder
ld.lld: error: duplicate symbol: wgpuDeviceCreateRenderPipeline
ld.lld: error: duplicate symbol: wgpuDeviceCreateRenderPipelineAsync
ld.lld: error: duplicate symbol: wgpuDeviceCreateSampler
ld.lld: error: duplicate symbol: wgpuDeviceCreateShaderModule
ld.lld: error: duplicate symbol: wgpuDeviceCreateSwapChain
ld.lld: error: duplicate symbol: wgpuDeviceCreateTexture
ld.lld: error: duplicate symbol: wgpuDeviceDestroy
ld.lld: error: duplicate symbol: wgpuDeviceEnumerateFeatures
ld.lld: error: duplicate symbol: wgpuDeviceGetLimits
ld.lld: error: duplicate symbol: wgpuDeviceGetQueue
ld.lld: error: duplicate symbol: wgpuDeviceHasFeature
ld.lld: error: duplicate symbol: wgpuDeviceInjectError
ld.lld: error: duplicate symbol: wgpuDeviceLoseForTesting
ld.lld: error: duplicate symbol: wgpuDevicePopErrorScope
ld.lld: error: duplicate symbol: wgpuDevicePushErrorScope
ld.lld: error: duplicate symbol: wgpuDeviceSetDeviceLostCallback
ld.lld: error: duplicate symbol: wgpuDeviceSetLabel
ld.lld: error: duplicate symbol: wgpuDeviceSetLoggingCallback
ld.lld: error: duplicate symbol: wgpuDeviceSetUncapturedErrorCallback
ld.lld: error: duplicate symbol: wgpuDeviceTick
ld.lld: error: duplicate symbol: wgpuDeviceReference
ld.lld: error: duplicate symbol: wgpuDeviceRelease
ld.lld: error: duplicate symbol: wgpuExternalTextureDestroy
ld.lld: error: duplicate symbol: wgpuExternalTextureSetLabel
ld.lld: error: duplicate symbol: wgpuExternalTextureReference
ld.lld: error: duplicate symbol: wgpuExternalTextureRelease
ld.lld: error: duplicate symbol: wgpuInstanceCreateSurface
ld.lld: error: duplicate symbol: wgpuInstanceRequestAdapter
ld.lld: error: duplicate symbol: wgpuInstanceReference
ld.lld: error: duplicate symbol: wgpuInstanceRelease
ld.lld: error: duplicate symbol: wgpuPipelineLayoutSetLabel
ld.lld: error: duplicate symbol: wgpuPipelineLayoutReference
ld.lld: error: duplicate symbol: wgpuPipelineLayoutRelease
ld.lld: error: duplicate symbol: wgpuQuerySetDestroy
ld.lld: error: duplicate symbol: wgpuQuerySetGetCount
ld.lld: error: duplicate symbol: wgpuQuerySetGetType
ld.lld: error: duplicate symbol: wgpuQuerySetSetLabel
ld.lld: error: duplicate symbol: wgpuQuerySetReference
ld.lld: error: duplicate symbol: wgpuQuerySetRelease
ld.lld: error: duplicate symbol: wgpuQueueCopyTextureForBrowser
ld.lld: error: duplicate symbol: wgpuQueueOnSubmittedWorkDone
ld.lld: error: duplicate symbol: wgpuQueueSetLabel
ld.lld: error: duplicate symbol: wgpuQueueSubmit
ld.lld: error: duplicate symbol: wgpuQueueWriteBuffer
ld.lld: error: duplicate symbol: wgpuQueueWriteTexture
ld.lld: error: duplicate symbol: wgpuQueueReference
ld.lld: error: duplicate symbol: wgpuQueueRelease
ld.lld: error: duplicate symbol: wgpuRenderBundleReference
ld.lld: error: duplicate symbol: wgpuRenderBundleRelease
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDraw
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDrawIndexed
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDrawIndexedIndirect
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDrawIndirect
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderFinish
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderInsertDebugMarker
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderPopDebugGroup
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderPushDebugGroup
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetBindGroup
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetIndexBuffer
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetLabel
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetPipeline
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetVertexBuffer
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderReference
ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderRelease
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderBeginOcclusionQuery
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDraw
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDrawIndexed
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDrawIndexedIndirect
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDrawIndirect
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderEnd
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderEndOcclusionQuery
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderExecuteBundles
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderInsertDebugMarker
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderPopDebugGroup
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderPushDebugGroup
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetBindGroup
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetBlendConstant
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetIndexBuffer
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetLabel
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetPipeline
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetScissorRect
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetStencilReference
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetVertexBuffer
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetViewport
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderWriteTimestamp
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderReference
ld.lld: error: duplicate symbol: wgpuRenderPassEncoderRelease
ld.lld: error: duplicate symbol: wgpuRenderPipelineGetBindGroupLayout
ld.lld: error: duplicate symbol: wgpuRenderPipelineSetLabel
ld.lld: error: duplicate symbol: wgpuRenderPipelineReference
ld.lld: error: duplicate symbol: wgpuRenderPipelineRelease
ld.lld: error: duplicate symbol: wgpuSamplerSetLabel
ld.lld: error: duplicate symbol: wgpuSamplerReference
ld.lld: error: duplicate symbol: wgpuSamplerRelease
ld.lld: error: duplicate symbol: wgpuShaderModuleGetCompilationInfo
ld.lld: error: duplicate symbol: wgpuShaderModuleSetLabel
ld.lld: error: duplicate symbol: wgpuShaderModuleReference
ld.lld: error: duplicate symbol: wgpuShaderModuleRelease
ld.lld: error: duplicate symbol: wgpuSurfaceReference
ld.lld: error: duplicate symbol: wgpuSurfaceRelease
ld.lld: error: duplicate symbol: wgpuSwapChainConfigure
ld.lld: error: duplicate symbol: wgpuSwapChainGetCurrentTextureView
ld.lld: error: duplicate symbol: wgpuSwapChainPresent
ld.lld: error: duplicate symbol: wgpuSwapChainReference
ld.lld: error: duplicate symbol: wgpuSwapChainRelease
ld.lld: error: duplicate symbol: wgpuTextureCreateView
ld.lld: error: duplicate symbol: wgpuTextureDestroy
ld.lld: error: duplicate symbol: wgpuTextureGetDepthOrArrayLayers
ld.lld: error: duplicate symbol: wgpuTextureGetDimension
ld.lld: error: duplicate symbol: wgpuTextureGetFormat
ld.lld: error: duplicate symbol: wgpuTextureGetHeight
ld.lld: error: duplicate symbol: wgpuTextureGetMipLevelCount
ld.lld: error: duplicate symbol: wgpuTextureGetSampleCount
ld.lld: error: duplicate symbol: wgpuTextureGetUsage
ld.lld: error: duplicate symbol: wgpuTextureGetWidth
ld.lld: error: duplicate symbol: wgpuTextureSetLabel
ld.lld: error: duplicate symbol: wgpuTextureReference
ld.lld: error: duplicate symbol: wgpuTextureRelease
ld.lld: error: duplicate symbol: wgpuTextureViewSetLabel
ld.lld: error: duplicate symbol: wgpuTextureViewReference
ld.lld: error: duplicate symbol: wgpuTextureViewRelease
Just adding in case it helps. These are the symbols lld complains about in my build: ``` ld.lld: error: duplicate symbol: wgpuCreateInstance ld.lld: error: duplicate symbol: wgpuGetProcAddress ld.lld: error: duplicate symbol: wgpuAdapterCreateDevice ld.lld: error: duplicate symbol: wgpuAdapterEnumerateFeatures ld.lld: error: duplicate symbol: wgpuAdapterGetLimits ld.lld: error: duplicate symbol: wgpuAdapterGetProperties ld.lld: error: duplicate symbol: wgpuAdapterHasFeature ld.lld: error: duplicate symbol: wgpuAdapterRequestDevice ld.lld: error: duplicate symbol: wgpuAdapterReference ld.lld: error: duplicate symbol: wgpuAdapterRelease ld.lld: error: duplicate symbol: wgpuBindGroupSetLabel ld.lld: error: duplicate symbol: wgpuBindGroupReference ld.lld: error: duplicate symbol: wgpuBindGroupRelease ld.lld: error: duplicate symbol: wgpuBindGroupLayoutSetLabel ld.lld: error: duplicate symbol: wgpuBindGroupLayoutReference ld.lld: error: duplicate symbol: wgpuBindGroupLayoutRelease ld.lld: error: duplicate symbol: wgpuBufferDestroy ld.lld: error: duplicate symbol: wgpuBufferGetConstMappedRange ld.lld: error: duplicate symbol: wgpuBufferGetMappedRange ld.lld: error: duplicate symbol: wgpuBufferGetSize ld.lld: error: duplicate symbol: wgpuBufferGetUsage ld.lld: error: duplicate symbol: wgpuBufferMapAsync ld.lld: error: duplicate symbol: wgpuBufferSetLabel ld.lld: error: duplicate symbol: wgpuBufferUnmap ld.lld: error: duplicate symbol: wgpuBufferReference ld.lld: error: duplicate symbol: wgpuBufferRelease ld.lld: error: duplicate symbol: wgpuCommandBufferSetLabel ld.lld: error: duplicate symbol: wgpuCommandBufferReference ld.lld: error: duplicate symbol: wgpuCommandBufferRelease ld.lld: error: duplicate symbol: wgpuCommandEncoderBeginComputePass ld.lld: error: duplicate symbol: wgpuCommandEncoderBeginRenderPass ld.lld: error: duplicate symbol: wgpuCommandEncoderClearBuffer ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyBufferToBuffer ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyBufferToTexture ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyTextureToBuffer ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyTextureToTexture ld.lld: error: duplicate symbol: wgpuCommandEncoderCopyTextureToTextureInternal ld.lld: error: duplicate symbol: wgpuCommandEncoderFinish ld.lld: error: duplicate symbol: wgpuCommandEncoderInjectValidationError ld.lld: error: duplicate symbol: wgpuCommandEncoderInsertDebugMarker ld.lld: error: duplicate symbol: wgpuCommandEncoderPopDebugGroup ld.lld: error: duplicate symbol: wgpuCommandEncoderPushDebugGroup ld.lld: error: duplicate symbol: wgpuCommandEncoderResolveQuerySet ld.lld: error: duplicate symbol: wgpuCommandEncoderSetLabel ld.lld: error: duplicate symbol: wgpuCommandEncoderWriteBuffer ld.lld: error: duplicate symbol: wgpuCommandEncoderWriteTimestamp ld.lld: error: duplicate symbol: wgpuCommandEncoderReference ld.lld: error: duplicate symbol: wgpuCommandEncoderRelease ld.lld: error: duplicate symbol: wgpuComputePassEncoderDispatchWorkgroups ld.lld: error: duplicate symbol: wgpuComputePassEncoderDispatchWorkgroupsIndirect ld.lld: error: duplicate symbol: wgpuComputePassEncoderEnd ld.lld: error: duplicate symbol: wgpuComputePassEncoderInsertDebugMarker ld.lld: error: duplicate symbol: wgpuComputePassEncoderPopDebugGroup ld.lld: error: duplicate symbol: wgpuComputePassEncoderPushDebugGroup ld.lld: error: duplicate symbol: wgpuComputePassEncoderSetBindGroup ld.lld: error: duplicate symbol: wgpuComputePassEncoderSetLabel ld.lld: error: duplicate symbol: wgpuComputePassEncoderSetPipeline ld.lld: error: duplicate symbol: wgpuComputePassEncoderWriteTimestamp ld.lld: error: duplicate symbol: wgpuComputePassEncoderReference ld.lld: error: duplicate symbol: wgpuComputePassEncoderRelease ld.lld: error: duplicate symbol: wgpuComputePipelineGetBindGroupLayout ld.lld: error: duplicate symbol: wgpuComputePipelineSetLabel ld.lld: error: duplicate symbol: wgpuComputePipelineReference ld.lld: error: duplicate symbol: wgpuComputePipelineRelease ld.lld: error: duplicate symbol: wgpuDeviceCreateBindGroup ld.lld: error: duplicate symbol: wgpuDeviceCreateBindGroupLayout ld.lld: error: duplicate symbol: wgpuDeviceCreateBuffer ld.lld: error: duplicate symbol: wgpuDeviceCreateCommandEncoder ld.lld: error: duplicate symbol: wgpuDeviceCreateComputePipeline ld.lld: error: duplicate symbol: wgpuDeviceCreateComputePipelineAsync ld.lld: error: duplicate symbol: wgpuDeviceCreateErrorBuffer ld.lld: error: duplicate symbol: wgpuDeviceCreateErrorExternalTexture ld.lld: error: duplicate symbol: wgpuDeviceCreateErrorTexture ld.lld: error: duplicate symbol: wgpuDeviceCreateExternalTexture ld.lld: error: duplicate symbol: wgpuDeviceCreatePipelineLayout ld.lld: error: duplicate symbol: wgpuDeviceCreateQuerySet ld.lld: error: duplicate symbol: wgpuDeviceCreateRenderBundleEncoder ld.lld: error: duplicate symbol: wgpuDeviceCreateRenderPipeline ld.lld: error: duplicate symbol: wgpuDeviceCreateRenderPipelineAsync ld.lld: error: duplicate symbol: wgpuDeviceCreateSampler ld.lld: error: duplicate symbol: wgpuDeviceCreateShaderModule ld.lld: error: duplicate symbol: wgpuDeviceCreateSwapChain ld.lld: error: duplicate symbol: wgpuDeviceCreateTexture ld.lld: error: duplicate symbol: wgpuDeviceDestroy ld.lld: error: duplicate symbol: wgpuDeviceEnumerateFeatures ld.lld: error: duplicate symbol: wgpuDeviceGetLimits ld.lld: error: duplicate symbol: wgpuDeviceGetQueue ld.lld: error: duplicate symbol: wgpuDeviceHasFeature ld.lld: error: duplicate symbol: wgpuDeviceInjectError ld.lld: error: duplicate symbol: wgpuDeviceLoseForTesting ld.lld: error: duplicate symbol: wgpuDevicePopErrorScope ld.lld: error: duplicate symbol: wgpuDevicePushErrorScope ld.lld: error: duplicate symbol: wgpuDeviceSetDeviceLostCallback ld.lld: error: duplicate symbol: wgpuDeviceSetLabel ld.lld: error: duplicate symbol: wgpuDeviceSetLoggingCallback ld.lld: error: duplicate symbol: wgpuDeviceSetUncapturedErrorCallback ld.lld: error: duplicate symbol: wgpuDeviceTick ld.lld: error: duplicate symbol: wgpuDeviceReference ld.lld: error: duplicate symbol: wgpuDeviceRelease ld.lld: error: duplicate symbol: wgpuExternalTextureDestroy ld.lld: error: duplicate symbol: wgpuExternalTextureSetLabel ld.lld: error: duplicate symbol: wgpuExternalTextureReference ld.lld: error: duplicate symbol: wgpuExternalTextureRelease ld.lld: error: duplicate symbol: wgpuInstanceCreateSurface ld.lld: error: duplicate symbol: wgpuInstanceRequestAdapter ld.lld: error: duplicate symbol: wgpuInstanceReference ld.lld: error: duplicate symbol: wgpuInstanceRelease ld.lld: error: duplicate symbol: wgpuPipelineLayoutSetLabel ld.lld: error: duplicate symbol: wgpuPipelineLayoutReference ld.lld: error: duplicate symbol: wgpuPipelineLayoutRelease ld.lld: error: duplicate symbol: wgpuQuerySetDestroy ld.lld: error: duplicate symbol: wgpuQuerySetGetCount ld.lld: error: duplicate symbol: wgpuQuerySetGetType ld.lld: error: duplicate symbol: wgpuQuerySetSetLabel ld.lld: error: duplicate symbol: wgpuQuerySetReference ld.lld: error: duplicate symbol: wgpuQuerySetRelease ld.lld: error: duplicate symbol: wgpuQueueCopyTextureForBrowser ld.lld: error: duplicate symbol: wgpuQueueOnSubmittedWorkDone ld.lld: error: duplicate symbol: wgpuQueueSetLabel ld.lld: error: duplicate symbol: wgpuQueueSubmit ld.lld: error: duplicate symbol: wgpuQueueWriteBuffer ld.lld: error: duplicate symbol: wgpuQueueWriteTexture ld.lld: error: duplicate symbol: wgpuQueueReference ld.lld: error: duplicate symbol: wgpuQueueRelease ld.lld: error: duplicate symbol: wgpuRenderBundleReference ld.lld: error: duplicate symbol: wgpuRenderBundleRelease ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDraw ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDrawIndexed ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDrawIndexedIndirect ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderDrawIndirect ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderFinish ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderInsertDebugMarker ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderPopDebugGroup ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderPushDebugGroup ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetBindGroup ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetIndexBuffer ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetLabel ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetPipeline ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderSetVertexBuffer ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderReference ld.lld: error: duplicate symbol: wgpuRenderBundleEncoderRelease ld.lld: error: duplicate symbol: wgpuRenderPassEncoderBeginOcclusionQuery ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDraw ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDrawIndexed ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDrawIndexedIndirect ld.lld: error: duplicate symbol: wgpuRenderPassEncoderDrawIndirect ld.lld: error: duplicate symbol: wgpuRenderPassEncoderEnd ld.lld: error: duplicate symbol: wgpuRenderPassEncoderEndOcclusionQuery ld.lld: error: duplicate symbol: wgpuRenderPassEncoderExecuteBundles ld.lld: error: duplicate symbol: wgpuRenderPassEncoderInsertDebugMarker ld.lld: error: duplicate symbol: wgpuRenderPassEncoderPopDebugGroup ld.lld: error: duplicate symbol: wgpuRenderPassEncoderPushDebugGroup ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetBindGroup ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetBlendConstant ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetIndexBuffer ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetLabel ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetPipeline ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetScissorRect ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetStencilReference ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetVertexBuffer ld.lld: error: duplicate symbol: wgpuRenderPassEncoderSetViewport ld.lld: error: duplicate symbol: wgpuRenderPassEncoderWriteTimestamp ld.lld: error: duplicate symbol: wgpuRenderPassEncoderReference ld.lld: error: duplicate symbol: wgpuRenderPassEncoderRelease ld.lld: error: duplicate symbol: wgpuRenderPipelineGetBindGroupLayout ld.lld: error: duplicate symbol: wgpuRenderPipelineSetLabel ld.lld: error: duplicate symbol: wgpuRenderPipelineReference ld.lld: error: duplicate symbol: wgpuRenderPipelineRelease ld.lld: error: duplicate symbol: wgpuSamplerSetLabel ld.lld: error: duplicate symbol: wgpuSamplerReference ld.lld: error: duplicate symbol: wgpuSamplerRelease ld.lld: error: duplicate symbol: wgpuShaderModuleGetCompilationInfo ld.lld: error: duplicate symbol: wgpuShaderModuleSetLabel ld.lld: error: duplicate symbol: wgpuShaderModuleReference ld.lld: error: duplicate symbol: wgpuShaderModuleRelease ld.lld: error: duplicate symbol: wgpuSurfaceReference ld.lld: error: duplicate symbol: wgpuSurfaceRelease ld.lld: error: duplicate symbol: wgpuSwapChainConfigure ld.lld: error: duplicate symbol: wgpuSwapChainGetCurrentTextureView ld.lld: error: duplicate symbol: wgpuSwapChainPresent ld.lld: error: duplicate symbol: wgpuSwapChainReference ld.lld: error: duplicate symbol: wgpuSwapChainRelease ld.lld: error: duplicate symbol: wgpuTextureCreateView ld.lld: error: duplicate symbol: wgpuTextureDestroy ld.lld: error: duplicate symbol: wgpuTextureGetDepthOrArrayLayers ld.lld: error: duplicate symbol: wgpuTextureGetDimension ld.lld: error: duplicate symbol: wgpuTextureGetFormat ld.lld: error: duplicate symbol: wgpuTextureGetHeight ld.lld: error: duplicate symbol: wgpuTextureGetMipLevelCount ld.lld: error: duplicate symbol: wgpuTextureGetSampleCount ld.lld: error: duplicate symbol: wgpuTextureGetUsage ld.lld: error: duplicate symbol: wgpuTextureGetWidth ld.lld: error: duplicate symbol: wgpuTextureSetLabel ld.lld: error: duplicate symbol: wgpuTextureReference ld.lld: error: duplicate symbol: wgpuTextureRelease ld.lld: error: duplicate symbol: wgpuTextureViewSetLabel ld.lld: error: duplicate symbol: wgpuTextureViewReference ld.lld: error: duplicate symbol: wgpuTextureViewRelease ```
alichraghi commented 2022-10-21 11:42:24 +00:00 (Migrated from github.com)

i ran imgui example with latest mach and no error

i ran imgui example with latest `mach` and no error
emidoots commented 2022-10-21 14:52:59 +00:00 (Migrated from github.com)

Seems resolved; opened https://github.com/hexops/mach/issues/593 to confirm imgui bindings work on every OS.

Seems resolved; opened https://github.com/hexops/mach/issues/593 to confirm imgui bindings work on every OS.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
hexops/mach#580
No description provided.