Closed bryanconlon closed 8 years ago
Hi @bryanconlon,
which version of avro-c do you have installed?
Building and installing the latest version of avro-c directly from source worked for me:
git clone -b release-1.8.1 https://github.com/apache/avro.git
cd avro/lang/c
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=RelWithDebInfo
make
sudo make install
I am using avro-c 1.8.1. Recompiled everything and now I am getting this error:
ERROR: could not load library "/usr/pgsql-9.5/lib/bottledwater.so": libavro.so.23.0.0: cannot open shared object file: No such file or directory
And that fie is located at /usr/local/lib/libavro.so.23.0.0 and it is in /usr/pgsql-9.5/lib/libavro.so.23.0.0.
Fixed it by removing the file in location: /usr/local/lib/libavro.so.23.0.0
I had similar problem when I had installed libavro from Ubuntu (14.04) repository and install it fom source code. It looks like you installed custom assembly of postgres 9.5 with old avro release. I guess current BottledWater requires avro-c 1.8+ and you have to setup correct library path search priority (LD_LIBRARY_PATH).
Bottled Water should compile with avro-c 1.7.7 as well, but it probably won't work with older versions. I've added a note to the README. (I'm not sure what's the oldest version that will work, so to be conservative I've recommended 1.7.7+ - if anyone has more accurate information, I'd welcome a PR to update the README.)
This seems to be a problem with library loading, which is really annoying for sure, but doesn't seem to be specifically an issue with Bottled Water, so I'm going to close this issue.
ERROR: could not load library "/usr/pgsql-9.5/lib/bottledwater.so": /usr/pgsql-9.5/lib/bottledwater.so: undefined symbol: avro_schema_enum