Library doesn't work/load on M1 Mac: no LC_RPATH's found
Description
I followed the installation instructions to add the library to my project (using bash <(curl -s https://raw.githubusercontent.com/objectbox/objectbox-go/main/install.sh), and it failed with the error message below. I then tried to use the test in the README (go test github.com/objectbox/objectbox-go/...) and it failed for the same reason.
Basic info
Please complete the following information:
- ObjectBox version (are you using the latest version?): Latest = 1.8.1
- Reproducibility: Always
- Device: M1 Pro Mac
- OS: Sonoma 14.6.1
How to reproduce
Steps to reproduce the behavior:
- Follow installation instructions:
bash <(curl -s https://raw.githubusercontent.com/objectbox/objectbox-go/main/install.sh)- Download test code:
git clone https://github.com/objectbox/objectbox-go.git - CD into directory
- Run test:
go test ./... - See error
Expected behavior
Test passes
Code
Use test code
Logs, stack traces
dyld[60013]: Library not loaded: @rpath/libobjectbox.dylib Referenced from: <00598A4B-D353-7E86-FAF8-D76E2483B2BB> /private/var/folders/2k/5zy5qzq126sgs39w4cp1sb7m0000gn/T/go-build2815972867/b179/performance.test Reason: no LC_RPATH's found
Thanks for reporting! Based on a quick web search this LC_RPATH issue appears to be an issue since macOS Sonoma (macOS 14).
I'm not sure how the ObjectBox Go library works, but as a workaround have you tried to put the ObjectBox library into the execution directory (or where the ObjectBox Go library expects it)?
Where exactly does the library expect it? I followed the setup instructions, which should presumably put things in the expected locations.
I ran the install.sh script in the directory of the project I intended to use Objectbox with and ran into this issue, so then I followed the instructions to try the provided Objectbox test code and ran into the same issue.
It should work if the library is in the same folder as the executable. You can manually download it using the
bash <(curl -s https://raw.githubusercontent.com/objectbox/objectbox-c/main/download.sh)
command (do not install it system-wide when asked).
This is just a potential workaround, we need to look at and fix this.