apache / arrow

Apache Arrow is a multi-language toolbox for accelerated data interchange and in-memory processing
https://arrow.apache.org/
Apache License 2.0
13.87k stars 3.38k forks source link

[C++] Error building Dockerfile with Apache Arrow and re2 on Alpine Linux #41619

Open MauricioBedunEvig opened 1 month ago

MauricioBedunEvig commented 1 month ago

Describe the usage question you have. Please include as many useful details as possible.

I am trying to build a Docker image that includes installing Apache Arrow from the source, but I am encountering an error related to the re2 library.

https://stackoverflow.com/questions/78462028/error-building-dockerfile-with-apache-arrow-and-re2-on-alpine-linux

Component(s)

C++

MauricioBedunEvig commented 1 month ago

The error message indicates that the specified file does not exist at the given path. This issue seems to arise during the build process of Apache Arrow when it tries to apply a patch to the pcre.h and pcre.cc files.

The context of the error involves a known issue where Findre2.cmake is called multiple times, causing conflicts. I have tried to address this by making Findre2.cmake idempotent with the following lines in the Dockerfile:

However, this does not seem to resolve the issue.

I have also ensured that all necessary dependencies are installed and tried different versions of the libraries, but the problem persists.

Question:

How can I resolve the No such file or directory error related to pcre.h and pcre.cc when building Apache Arrow with re2 on Alpine Linux? Is there a specific step or configuration that I am missing to ensure the re2 library is correctly patched and built?

kou commented 1 month ago

Could you show full error message when you remove your sed workaround?

kou commented 1 month ago

If you think that it's a gRPC's CMake problem, could you report it to gRPC?