Dorian Kind created ARROW-13053:
-----------------------------------

             Summary: Build fails on MacOS Big Sur using homebrewed Arrow 
libraries
                 Key: ARROW-13053
                 URL: https://issues.apache.org/jira/browse/ARROW-13053
             Project: Apache Arrow
          Issue Type: Bug
          Components: Python
    Affects Versions: 4.0.1
         Environment: MacOS BigSur 11.4 (Apple Silicon)
Python 3.9.5
apache-arrow 4.0.1 (via Homebrew)
            Reporter: Dorian Kind


When installing pyarrow 4.0.1 from source, the install step fails with 

{{error: can't copy 'build/lib.macosx-11.3-arm64-3.9/pyarrow/include/arrow': 
doesn't exist or not a regular file}}

because the headers directory

{{build/lib.macosx-11.3-arm64-3.9/pyarrow/include/arrow}}

is a relative symlink to {{../Cellar/apache-arrow/4.0.1/include/arrow}}

I believe this is caused by the build system including the header files from{{ 
/opt/homebrew/include/arrow}}, which is the above symlink:

{{ls -hl /opt/homebrew/include/arrow
}}{{lrwxr-xr-x  1 dki  admin    42B Jun  8 15:35 /opt/homebrew/include/arrow -> 
../Cellar/apache-arrow/4.0.1/include/arrow}}

I was able work around this issue by modifying line 334 in {{CMakeLists.txt}} 
from

{{Always bundle includes}}
{{file(COPY ${ARROW_INCLUDE_DIR}/arrow DESTINATION 
${BUILD_OUTPUT_ROOT_DIRECTORY}/include)}}

to

{{Always bundle includes}}
{{get_filename_component(REAL_ARROW_INCLUDE_DIR "${ARROW_INCLUDE_DIR}/arrow" 
REALPATH)}}
{{file(COPY ${}}{{REAL_ARROW_INCLUDE_DIR}}{{} DESTINATION 
${BUILD_OUTPUT_ROOT_DIRECTORY}/include)}}

But I'm not familiar with CMake, so maybe there is a more appropriate way to 
fix this.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to