apache / apache/arrow

[C++] Unable to build Arrow C++ on osx arm64 inside conda env because of Invalid configuration `arm64-apple-darwin20.0.0': machine `arm64-apple' not recognized and arrow/cpp/arm64-apple-darwin20.0.0-ar: No such file or directory

Open
#30,937 19 comments 0 reactions 0 assignees View on GitHub
Component: C++ Type: bug
Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 18h
Merged PRs (30d)
91

Description

Steps to reproduce this issue on osx arm64:
```bash

git clone https://github.com/apache/arrow.git

cd arrow/cpp
brew update && brew install node && brew bundle --file=Brewfile

cd ..
mamba create -y -n arrow-commit -c conda-forge \
--file ci/conda_env_unix.txt \
--file ci/conda_env_cpp.txt \
--file ci/conda_env_python.txt \
compilers \
python=3.8 \
pandas \
aws-sdk-cpp \
r

mamba activate arrow-commit
pip install -r python/requirements-build.txt -r python/requirements-test.txt

export ARROW_BUILD_TESTS=OFF
export ARROW_BUILD_TYPE=release
export ARROW_DEPENDENCY_SOURCE=AUTO
export ARROW_DATASET=ON
export ARROW_DEFAULT_MEMORY_POOL=mimalloc
export ARROW_ENABLE_UNSAFE_MEMORY_ACCESS=true
export ARROW_ENABLE_NULL_CHECK_FOR_GET=false
export ARROW_FLIGHT=OFF
export ARROW_GANDIVA=OFF
export ARROW_HDFS=ON
export ARROW_HOME=$CONDA_PREFIX
export ARROW_INSTALL_NAME_RPATH=OFF
export ARROW_MIMALLOC=ON
export ARROW_NO_DEPRECATED_API=ON
export ARROW_ORC=ON
export ARROW_PARQUET=ON
export ARROW_PLASMA=ON
export ARROW_PYTHON=ON
export ARROW_S3=ON
export ARROW_USE_ASAN=OFF
export ARROW_USE_CCACHE=ON
export ARROW_USE_UBSAN=OFF
export ARROW_WITH_BROTLI=ON
export ARROW_WITH_BZ2=ON
export ARROW_WITH_LZ4=ON
export ARROW_WITH_SNAPPY=ON
export ARROW_WITH_ZLIB=ON
export ARROW_WITH_ZSTD=ON
export GTest_SOURCE=BUNDLED
export ORC_SOURCE=BUNDLED
export PARQUET_BUILD_EXAMPLES=ON
export PARQUET_BUILD_EXECUTABLES=ON
export PYTHON=python
export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH

ci/scripts/cpp_build.sh $(pwd) $(pwd)

```
 

Error (full logs are attached):
```java

...
checking size of void *... 8
checking size of int... 4
checking size of long... 8
checking size of long long... 8
checking size of intmax_t... 8
checking build system type...
-- stderr output is:
Invalid configuration `arm64-apple-darwin20.0.0': machine `arm64-apple' not recognized
configure: error: /bin/sh build-aux/config.sub arm64-apple-darwin20.0.0 failed

CMake Error at /Users/voltrondata/arrow/cpp/jemalloc_ep-prefix/src/jemalloc_ep-stamp/jemalloc_ep-configure-RELEASE.cmake:47 (message):
  Stopping after outputting logs.

[31/380] Performing configure step for 'orc_ep'
ninja: build stopped: subcommand failed.
```
 

 

**Reporter**: [Elena Henderson](https://issues.apache.org/jira/browse/ARROW-15459) / @ElenaHenderson
**Watchers**: [Rok Mihevc](https://issues.apache.org/jira/browse/ARROW-15459) / @rok
#### Original Issue Attachments:
- [logs](https://issues.apache.org/jira/secure/attachment/13039350/logs)

**Note**: *This issue was originally created as [ARROW-15459](https://issues.apache.org/jira/browse/ARROW-15459). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

Contributor guide

Open the contributing guide

Research direction

Reproduce the failure with the listed macOS arm64 Conda setup and start with ci/scripts/cpp_build.sh and the attached logs. Trace the jemalloc_ep and orc_ep configure steps where build-aux/config.sub rejects arm64-apple-darwin20.0.0. Done means the documented build completes successfully in this environment.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp, macos
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.