chendan created ARROW-17291:
-------------------------------

             Summary: Build jemalloc_ep source code failed
                 Key: ARROW-17291
                 URL: https://issues.apache.org/jira/browse/ARROW-17291
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++
    Affects Versions: 2.0.0
         Environment: CentOS Linux release 7.9.2009 (Core)
cross-complier: ARMv8 aarch64
            Reporter: chendan


I want to build pyarrow for arm platform.  I follow the steps in 
[https://arrow.apache.org/docs/developers/python.html#build-and-test]. When I 
finished cmake step and performed make -j4 step there was an error occured:

(pyarrow-dev) [root@localhost build]# make -j4
[  0%] Built target toolchain
[  0%] Performing configure step for 'jemalloc_ep'
[  4%] Built target arrow_dataset_objlib
CMake Error at 
/root/build/arrow/cpp/build/jemalloc_ep-prefix/src/jemalloc_ep-stamp/jemalloc_ep-configure-DEBUG.cmake:37
 (message):
  Command failed: 77

   './configure' 
'AR=/opt/aarch64-kedacom-linux/bin/aarch64-kedacom-linux-gnu-ar' 
'CC=/opt/aarch64-kedacom-linux/bin/aarch64-kedacom-linux-gnu-gcc' 
'{-}{{-}}prefix=/root/build/arrow/cpp/build/jemalloc_ep-prefix/src/jemalloc_ep/dist/'
 '{-}{{-}}with-jemalloc-prefix=je_arrow_' 
'{-}{{-}}with-private-namespace=je_arrow_private_' '{-}{{-}}without-export' 
'{-}{{-}}disable-shared' '{-}{{-}}disable-cxx' '{-}{{-}}disable-libdl' 
'\{-}-disable-initial-exec-tls'

  See also

    
/root/build/arrow/cpp/build/jemalloc_ep-prefix/src/jemalloc_ep-stamp/jemalloc_ep-configure-*.log

– stdout output is:
checking for xsltproc... /usr/bin/xsltproc
1
checking for x86_64-conda-linux-gnu-gcc... 2
/opt/aarch64-kedacom-linux/bin/aarch64-kedacom-linux-gnu-gcc
write conftest
checking whether the C compiler works... no

– stderr output is:
configure: error: in 
`/root/build/arrow/cpp/build/jemalloc_ep-prefix/src/jemalloc_ep':
configure: error: C compiler cannot create executables
See `config.log' for more details

CMake Error at 
/root/build/arrow/cpp/build/jemalloc_ep-prefix/src/jemalloc_ep-stamp/jemalloc_ep-configure-DEBUG.cmake:47
 (message):
  Stopping after outputting logs.

make[2]: *** [CMakeFiles/jemalloc_ep.dir/build.make:92: 
jemalloc_ep-prefix/src/jemalloc_ep-stamp/jemalloc_ep-configure] Error 1
make[1]: *** [CMakeFiles/Makefile2:725: CMakeFiles/jemalloc_ep.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

 

I add "echo $CFLAGS" into the jemalloc_ep configure file. The printed CFLAS is 
wrong:

-march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong 
-fno-plt -O2 -ffunction-sections -pipe -isystem 
/root/anaconda3/envs/pyarrow-dev/include

Nocona is not applicable for armv8 CPU. How to solve it?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to