-
I'm trying to build redpanda from scratch. I have the dependencies installed (cmake doesn't complain about any of them missing), but when I do "make", at about 30% I end up with this:
And a bunch of other undefined references, all related to absl. I have abseil 20240722.0 installed (built as static libraries), and cmake found it when I called cmake. Any idea why this happens? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 8 replies
-
Ok I figured it out: I install abseil 20240722.0 as a dependency to something (protocol buffer I think), so it was available for find_package to find. But redpanda's dependencies.cmake downloads its own abseil (20230802.1) as part of the build process, and I guess it then includes the external abseil but tries to link against the internal one. I fixed it by making redpanda download the same version I had. Now I'm getting another undefined reference:
As far as I know, redpanda isn't building snappy by itself, I installed it myself. I tried building it as a shared library and as a static one, the problem is the same. Undefined typeinfo is usually the sign of having compiled with -fno-rtti, but I it doesn't seem that snappy uses -fno-rtti unless it's on Windows. |
Beta Was this translation helpful? Give feedback.
-
Sorry for the late reply. I finally got around to trying things in a docker container and making a Dockerfile to reproduce the problem. I'm attaching the following files in an Archive.zip:
This can be reproduced as follows: First, build the docker image with Next, run the docker container with
Next, clone redpanda, switch the the latest release, and run bazel:
I have no knowledge of Bazel so I can't understand what the error messages mean. I've seen one of them referring to not finding Thanks for your help! |
Beta Was this translation helpful? Give feedback.
We are updating our build to using Bazel - can you give that a try?