Author Topic: brickd 2.4.0 macOS - incompatible library version of libusb  (Read 3981 times)

cl-

  • Newbie
  • *
  • Posts: 28
    • View Profile
Good morning!

I updated brick daemon to 2.4.0 on macOS (10.14.5) today.
Brick Viewer works as expected and it shows connected devices.

However, when checking the version (brickd --version), it fails with the following error message:

Code: [Select]
dyld: Library not loaded: @executable_path/libusb-1.0.dylib
  Referenced from: /usr/local/libexec/brickd.app/Contents/MacOS/./brickd
  Reason: Incompatible library version: brickd requires version 3.0.0 or later, but libusb-1.0.dylib provides version 2.0.0
Abort trap: 6

Temporary solution:
I have libusb installed via homebrew. I can't uninstall it though, as it has dependencies (dfu-util for instance). When temporarily renaming libusb-1.0.dylib (inside /usr/local/Cellar/libusb/1.0.22/lib/), brick daemon does load its own libusb version again.


Cheers,
Claudio

photron

  • Tinkerforge Staff
  • Administrator
  • Hero Member
  • *****
  • Posts: 2.474
    • View Profile
Re: brickd 2.4.0 macOS - incompatible library version of libusb
« Reply #1 on: July 05, 2019, 11:57:55 »
That's very strange. For exactly this reason Brick Daemon links to @executable_path/libusb-1.0.dylib. There should be no confusion for the loader which libusb to load.

Brick Daemon comes with its own libusb version that includes some brickd specific changes. So there is no point in trying to make this look like a vanilla libusb version anyway.

I've changed libusb-1.0.dylib to libusb-1.0-brickd.dylib now. This should fix the problem.

Please test the attached brickd version.

cl-

  • Newbie
  • *
  • Posts: 28
    • View Profile
Re: brickd 2.4.0 macOS - incompatible library version of libusb
« Reply #2 on: July 05, 2019, 15:50:46 »
Thanks for the fix!
It works for me.