Skip to content

[Bug][macOS arm64] Official DMG package missing libonnxruntime.1.21.0.dylib, memory service startup failed #76

Description

@Shackbear

Environment

  • OS: macOS Apple Silicon (arm64)
  • Install way: Official released DMG installer
  • Memmy version: latest release
  • Dependency: onnxruntime-node@1.21.0

Bug Description

After installing official Mac DMG package, Memmy cannot initialize memory service. Repeated retry error log:
dlopen(/Applications/Memmy.app/Contents/Resources/app.asar.unpacked/dist/runtime/memory/node_modules/onnxruntime-node/bin/napi-v3/darwin/arm64/onnxruntime_binding.node, 0x0001): Library not loaded: @rpath/libonnxruntime.1.21.0.dylib
Referenced from: .../onnxruntime_binding.node
Reason: tried: ... libonnxruntime.1.21.0.dylib (no such file)

Root Cause Analysis

Electron + electron-builder packaging config defect:
asarUnpack rule only includes **/*.node, missing **/*.dylib.

  • onnxruntime_binding.node unpacked into app.asar.unpacked
  • libonnxruntime.1.21.0.dylib remains compressed inside app.asar
    macOS dlopen() cannot load dynamic libraries inside asar archive, leads dependency missing.

Temporary Workaround

  1. Modify ~/.memmy/config.yaml, switch embedding provider to openai(api embedding), bypass local onnxruntime.
  2. Or manually download onnxruntime-node@1.21.0, copy libonnxruntime.1.21.0.dylib to corresponding directory, execute xattr -cr and adhoc codesign.
### Suggested Fix
Update electron-builder `asarUnpack` config, add pattern:

"**/*.dylib"

to unpack all macOS dynamic libraries together with `.node` native modules.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions