warrenfalk / rocksdb-sharp

.net bindings for the rocksdb by facebook
Other
206 stars 65 forks source link

Alpine support #54

Closed supcry closed 5 years ago

supcry commented 5 years ago

Please, add Alpine (3.7, 3.8, edge) support.

In current version 5.17.2 it does not work. Depends of libbz2 and finally I've got ".../bin/Release/netcoreapp2.2/native/amd64/librocksdb.so: (NativeLoadException) dlopen: Error relocating .../bin/Release/netcoreapp2.2/native/amd64/librocksdb.so: backtrace: symbol not found"

If I tried Alpine package rocksdb 5.15.10-r4, I've got "librocksdb.so: (NativeLoadException) dlopen: Error relocating /usr/lib/librocksdb.so: _ZdlPvSt11align_val_t: symbol not found"

psmolkin commented 5 years ago

@supcry please try to install the following packages

apk add  --no-cache rocksdb libstdc++=8.3.0-r0 \
  -X 'http://dl-cdn.alpinelinux.org/alpine/edge/testing' \
  -X 'http://dl-cdn.alpinelinux.org/alpine/edge/main'

and use /usr/lib/librocksdb.so.5 (or install rocksdb-dev and use /usr/lib/librocksdb.so)

It works for me

# cat /etc/*release
3.8.2
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.8.2
PRETTY_NAME="Alpine Linux v3.8"
HOME_URL="http://alpinelinux.org"
BUG_REPORT_URL="http://bugs.alpinelinux.org"

# ldd /usr/lib/librocksdb.so.5
        ldd (0x7f0e1991e000)
        libsnappy.so.1 => /usr/lib/libsnappy.so.1 (0x7f0e19b9f000)
        libz.so.1 => /lib/libz.so.1 (0x7f0e190b8000)
        libbz2.so.1 => /usr/lib/libbz2.so.1 (0x7f0e18eab000)
        liblz4.so.1 => /usr/lib/liblz4.so.1 (0x7f0e19b84000)
        libzstd.so.1 => /usr/lib/libzstd.so.1 (0x7f0e19ade000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x7f0e18d56000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x7f0e19aca000)
        libc.musl-x86_64.so.1 => ldd (0x7f0e1991e000)
supcry commented 5 years ago

Thnx, it works.