eclipse-zenoh / zenoh

zenoh unifies data in motion, data in-use, data at rest and computations. It carefully blends traditional pub/sub with geo-distributed storages, queries and computations, while retaining a level of time and space efficiency that is well beyond any of the mainstream stacks.
https://zenoh.io
Other
1.51k stars 161 forks source link

[Bug] Homebrew installation of Zenoh 0.10.0 invalid plugin path #572

Open AngusWaller opened 1 year ago

AngusWaller commented 1 year ago

Describe the bug

After installing Zenoh using Homebrew per the MacOS instructions here it is not possible to run Zenoh via the command zenohd

Error Message: thread 'main' panicked at 'Plugin load failure: Library file 'libzenoh_plugin_rest.dylib' not found at commons/zenoh-util/src/std_only/lib_loader.rs:135.', zenohd/src/main.rs:97:21

Workaround: Use the plugin-search-dir command arg zenohd --plugin-search-dir /opt/homebrew/lib/

To reproduce

  1. download Zenoh
  2. run zenoh

System info

OlivierHecart commented 1 year ago

The cause of the failure is that homebrew on apple silicon by default installs binaries in /opt/homebrew/bin and libraries in /opt/homebrew/lib (Where homebrew on intel was installing in /usr/local/bin and /usl/local/lib). zenohd by default does not look into /opt/homebrew/lib and so does not find the plugins libs.

Proposal: zenohd currently looks for plugins in zenohd executable directory (as well as in a predefined list of directories). We could also make it look into <path_to_zenohd>/../lib.

OlivierHecart commented 1 year ago

Until we properly fix this. A quick workaround is to point zenohd to /opt/homebrew/lib/:

zenohd --plugin-search-dir /opt/homebrew/lib
diogomatsubara commented 6 months ago

I just tried with 0.11.0-rc3 and I couldn't reproduce. Is this still an issue for you @AngusWaller ?