OpenMathLib / OpenBLAS

OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
http://www.openblas.net
BSD 3-Clause "New" or "Revised" License
6.32k stars 1.49k forks source link

OpenBLAS , Build ARMV8 with clang. '../libopenblas_haswellp-r0.2.20.so' failed #1632

Closed cefengxu closed 6 years ago

cefengxu commented 6 years ago

Dear ~

To build the .so for android as command below ( refer to Build ARMV8 with clang ):

export NDK_BUNDLE_DIR=/my/path/Android/ndk/android-ndk-r16b

export PATH=${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:${NDK_BUNDLE_DIR}/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH

export LDFLAGS="-L${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm"

export CLANG_FLAGS="-target aarch64-none-linux-android --sysroot ${NDK_BUNDLE_DIR}/platforms/android-27/arch-arm64 -gcc-toolchain ${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64"

make TARGET=ARMV8 ONLY_CBLAS=1 AR=ar CC="clang ${CLANG_FLAGS}" HOSTCC=gcc -j4

The platform & cofig. as follow:

But , get the error output as follown:

 END OF TESTS
make[1]: Leaving directory '/my/path/OpenBLAS-master/ctest'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/OpenBLAS-master/exports'
clang -target aarch64-none-linux-android --sysroot /my/path/Android/ndk/android-ndk-r16b/platforms/android-27/arch-arm64 -gcc-toolchain /my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64 -O2 -DMAX_STACK_ALLOC=2048 -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DNO_LAPACK -DNO_LAPACKE -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=8 -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -I.. -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -shared -o ../libopenblas_haswellp-r0.2.20.so \
-Wl,--whole-archive ../libopenblas_haswellp-r0.2.20.a -Wl,--no-whole-archive \
-Wl,-soname,libopenblas.so.0 -lm -lpthread -lm -lpthread
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: ../libopenblas_haswellp-r0.2.20.a(saxpy.o): Relocations in generic ELF (EM: 62)
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: ../libopenblas_haswellp-r0.2.20.a(saxpy.o): Relocations in generic ELF (EM: 62)
../libopenblas_haswellp-r0.2.20.a(saxpy.o): error adding symbols: File in wrong format
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Makefile:139: recipe for target '../libopenblas_haswellp-r0.2.20.so' failed
make[1]: *** [../libopenblas_haswellp-r0.2.20.so] Error 1
make[1]: Leaving directory '/my/path/OpenBLAS-master/exports'
Makefile:90: recipe for target 'shared' failed
make: *** [shared] Error 2
martin-frbg commented 6 years ago

This looks as if the ar tool of the host system was used instead of the one from the ndk. You could try setting AR with the full path to the executable from the ndk like it is described in the instructions for armv7.

cefengxu commented 6 years ago

@martin-frbg Cause it was builded on 'Ubuntu 16.04' instead of 'Mac', so the AR may be no the keep point. BTW, i took advices of yours and set the AR config.( as shown below )

AR=${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar

and then use belown command to build

make TARGET=ARMV8 ONLY_CBLAS=1 AR="${AR}" CC="clang ${CLANG_FLAGS}" HOSTCC=gcc -j4

However , the error still output

martin-frbg commented 6 years ago

Strange. Did you do make clean before rebuilding ? From the output you posted, it is already using the correct ld, perhaps it is picking up the wrong assembler and you need to specify AS as well.

cefengxu commented 6 years ago

@martin-frbg what 's the " specify AS " ?? what 's the "AS" ???

I did "make clean" and builded it again , but still not work. Anyway , I pasted the BUILD LOG as follow.

make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/OpenBLAS-master/interface'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../libopenblas_armv8p-r0.2.20.a cblas_isamax.o cblas_sasum.o cblas_saxpy.o cblas_scopy.o cblas_sdot.o cblas_sdsdot.o cblas_dsdot.o cblas_srot.o cblas_srotg.o cblas_srotm.o cblas_srotmg.o cblas_sscal.o cblas_sswap.o cblas_snrm2.o cblas_saxpby.o cblas_sgemv.o cblas_sger.o cblas_ssymv.o cblas_strmv.o cblas_strsv.o cblas_ssyr.o cblas_ssyr2.o cblas_sgbmv.o cblas_ssbmv.o cblas_sspmv.o cblas_sspr.o cblas_sspr2.o cblas_stbmv.o cblas_stbsv.o cblas_stpmv.o cblas_stpsv.o cblas_sgemm.o cblas_ssymm.o cblas_strmm.o cblas_strsm.o cblas_ssyrk.o cblas_ssyr2k.o cblas_somatcopy.o cblas_simatcopy.o cblas_sgeadd.o cblas_idamax.o cblas_dasum.o cblas_daxpy.o cblas_dcopy.o cblas_ddot.o cblas_drot.o cblas_drotg.o cblas_drotm.o cblas_drotmg.o cblas_dscal.o cblas_dswap.o cblas_dnrm2.o cblas_daxpby.o cblas_dgemv.o cblas_dger.o cblas_dsymv.o cblas_dtrmv.o cblas_dtrsv.o cblas_dsyr.o cblas_dsyr2.o cblas_dgbmv.o cblas_dsbmv.o cblas_dspmv.o cblas_dspr.o cblas_dspr2.o cblas_dtbmv.o cblas_dtbsv.o cblas_dtpmv.o cblas_dtpsv.o cblas_dgemm.o cblas_dsymm.o cblas_dtrmm.o cblas_dtrsm.o cblas_dsyrk.o cblas_dsyr2k.o cblas_domatcopy.o cblas_dimatcopy.o cblas_dgeadd.o cblas_icamax.o cblas_scasum.o cblas_caxpy.o cblas_ccopy.o cblas_cdotc.o cblas_cdotu.o cblas_cdotc_sub.o cblas_cdotu_sub.o cblas_cscal.o cblas_csscal.o cblas_cswap.o cblas_scnrm2.o cblas_caxpby.o cblas_cgemv.o cblas_cgerc.o cblas_cgeru.o cblas_cgbmv.o cblas_chbmv.o cblas_chemv.o cblas_cher.o cblas_cher2.o cblas_chpmv.o cblas_chpr.o cblas_chpr2.o cblas_ctbmv.o cblas_ctbsv.o cblas_ctpmv.o cblas_ctpsv.o cblas_ctrmv.o cblas_ctrsv.o cblas_cgemm.o cblas_csymm.o cblas_ctrmm.o cblas_ctrsm.o cblas_csyrk.o cblas_csyr2k.o cblas_chemm.o cblas_cherk.o cblas_cher2k.o cblas_comatcopy.o cblas_cimatcopy.o cblas_cgeadd.o cblas_xerbla.o cblas_izamax.o cblas_dzasum.o cblas_zaxpy.o cblas_zcopy.o cblas_zdotc.o cblas_zdotu.o cblas_zdotc_sub.o cblas_zdotu_sub.o cblas_zscal.o cblas_zdscal.o cblas_zswap.o cblas_dznrm2.o cblas_zaxpby.o cblas_zgemv.o cblas_zgerc.o cblas_zgeru.o cblas_zgbmv.o cblas_zhbmv.o cblas_zhemv.o cblas_zher.o cblas_zher2.o cblas_zhpmv.o cblas_zhpr.o cblas_zhpr2.o cblas_ztbmv.o cblas_ztbsv.o cblas_ztpmv.o cblas_ztpsv.o cblas_ztrmv.o cblas_ztrsv.o cblas_zgemm.o cblas_zsymm.o cblas_ztrmm.o cblas_ztrsm.o cblas_zsyrk.o cblas_zsyr2k.o cblas_zhemm.o cblas_zherk.o cblas_zher2k.o cblas_zomatcopy.o cblas_zimatcopy.o cblas_zgeadd.o
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar: creating ../libopenblas_armv8p-r0.2.20.a
make[1]: Leaving directory '/my/path/OpenBLAS-master/interface'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/OpenBLAS-master/driver/level2'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../../libopenblas_armv8p-r0.2.20.a sgbmv_n.o sgbmv_t.o ssbmv_U.o ssbmv_L.o sspmv_U.o sspmv_L.o sspr_U.o sspr_L.o sspr2_U.o sspr2_L.o ssyr_U.o ssyr_L.o ssyr2_U.o ssyr2_L.o stbmv_NUU.o stbmv_NUN.o stbmv_NLU.o stbmv_NLN.o stbmv_TUU.o stbmv_TUN.o stbmv_TLU.o stbmv_TLN.o stbsv_NUU.o stbsv_NUN.o stbsv_NLU.o stbsv_NLN.o stbsv_TUU.o stbsv_TUN.o stbsv_TLU.o stbsv_TLN.o stpmv_NUU.o stpmv_NUN.o stpmv_NLU.o stpmv_NLN.o stpmv_TUU.o stpmv_TUN.o stpmv_TLU.o stpmv_TLN.o stpsv_NUU.o stpsv_NUN.o stpsv_NLU.o stpsv_NLN.o stpsv_TUU.o stpsv_TUN.o stpsv_TLU.o stpsv_TLN.o strmv_NUU.o strmv_NUN.o strmv_NLU.o strmv_NLN.o strmv_TUU.o strmv_TUN.o strmv_TLU.o strmv_TLN.o strsv_NUU.o strsv_NUN.o strsv_NLU.o strsv_NLN.o strsv_TUU.o strsv_TUN.o strsv_TLU.o strsv_TLN.o sgemv_thread_n.o sgemv_thread_t.o sger_thread.o ssymv_thread_U.o ssymv_thread_L.o ssyr_thread_U.o ssyr_thread_L.o ssyr2_thread_U.o ssyr2_thread_L.o sspr_thread_U.o sspr_thread_L.o sspr2_thread_U.o sspr2_thread_L.o strmv_thread_NUU.o strmv_thread_NUN.o strmv_thread_NLU.o strmv_thread_NLN.o strmv_thread_TUU.o strmv_thread_TUN.o strmv_thread_TLU.o strmv_thread_TLN.o sspmv_thread_U.o sspmv_thread_L.o stpmv_thread_NUU.o stpmv_thread_NUN.o stpmv_thread_NLU.o stpmv_thread_NLN.o stpmv_thread_TUU.o stpmv_thread_TUN.o stpmv_thread_TLU.o stpmv_thread_TLN.o sgbmv_thread_n.o sgbmv_thread_t.o ssbmv_thread_U.o ssbmv_thread_L.o stbmv_thread_NUU.o stbmv_thread_NUN.o stbmv_thread_NLU.o stbmv_thread_NLN.o stbmv_thread_TUU.o stbmv_thread_TUN.o stbmv_thread_TLU.o stbmv_thread_TLN.o dgbmv_n.o dgbmv_t.o dsbmv_U.o dsbmv_L.o dspmv_U.o dspmv_L.o dspr_U.o dspr_L.o dspr2_U.o dspr2_L.o dsyr_U.o dsyr_L.o dsyr2_U.o dsyr2_L.o dtbmv_NUU.o dtbmv_NUN.o dtbmv_NLU.o dtbmv_NLN.o dtbmv_TUU.o dtbmv_TUN.o dtbmv_TLU.o dtbmv_TLN.o dtbsv_NUU.o dtbsv_NUN.o dtbsv_NLU.o dtbsv_NLN.o dtbsv_TUU.o dtbsv_TUN.o dtbsv_TLU.o dtbsv_TLN.o dtpmv_NUU.o dtpmv_NUN.o dtpmv_NLU.o dtpmv_NLN.o dtpmv_TUU.o dtpmv_TUN.o dtpmv_TLU.o dtpmv_TLN.o dtpsv_NUU.o dtpsv_NUN.o dtpsv_NLU.o dtpsv_NLN.o dtpsv_TUU.o dtpsv_TUN.o dtpsv_TLU.o dtpsv_TLN.o dtrmv_NUU.o dtrmv_NUN.o dtrmv_NLU.o dtrmv_NLN.o dtrmv_TUU.o dtrmv_TUN.o dtrmv_TLU.o dtrmv_TLN.o dtrsv_NUU.o dtrsv_NUN.o dtrsv_NLU.o dtrsv_NLN.o dtrsv_TUU.o dtrsv_TUN.o dtrsv_TLU.o dtrsv_TLN.o dgemv_thread_n.o dgemv_thread_t.o dger_thread.o dsymv_thread_U.o dsymv_thread_L.o dsyr_thread_U.o dsyr_thread_L.o dsyr2_thread_U.o dsyr2_thread_L.o dspr_thread_U.o dspr_thread_L.o dspr2_thread_U.o dspr2_thread_L.o dtrmv_thread_NUU.o dtrmv_thread_NUN.o dtrmv_thread_NLU.o dtrmv_thread_NLN.o dtrmv_thread_TUU.o dtrmv_thread_TUN.o dtrmv_thread_TLU.o dtrmv_thread_TLN.o dspmv_thread_U.o dspmv_thread_L.o dtpmv_thread_NUU.o dtpmv_thread_NUN.o dtpmv_thread_NLU.o dtpmv_thread_NLN.o dtpmv_thread_TUU.o dtpmv_thread_TUN.o dtpmv_thread_TLU.o dtpmv_thread_TLN.o dgbmv_thread_n.o dgbmv_thread_t.o dsbmv_thread_U.o dsbmv_thread_L.o dtbmv_thread_NUU.o dtbmv_thread_NUN.o dtbmv_thread_NLU.o dtbmv_thread_NLN.o dtbmv_thread_TUU.o dtbmv_thread_TUN.o dtbmv_thread_TLU.o dtbmv_thread_TLN.o cgbmv_n.o cgbmv_t.o cgbmv_r.o cgbmv_c.o cgbmv_o.o cgbmv_u.o cgbmv_s.o cgbmv_d.o chbmv_U.o chbmv_L.o chbmv_V.o chbmv_M.o cher_U.o cher_L.o cher_V.o cher_M.o cher2_U.o cher2_L.o cher2_V.o cher2_M.o chpmv_U.o chpmv_L.o chpmv_V.o chpmv_M.o chpr_U.o chpr_L.o chpr_V.o chpr_M.o chpr2_U.o chpr2_L.o chpr2_V.o chpr2_M.o csbmv_U.o csbmv_L.o cspmv_U.o cspmv_L.o cspr_U.o cspr_L.o cspr2_U.o cspr2_L.o csyr_U.o csyr_L.o csyr2_U.o csyr2_L.o ctbmv_NUU.o ctbmv_NUN.o ctbmv_NLU.o ctbmv_NLN.o ctbmv_TUU.o ctbmv_TUN.o ctbmv_TLU.o ctbmv_TLN.o ctbmv_RUU.o ctbmv_RUN.o ctbmv_RLU.o ctbmv_RLN.o ctbmv_CUU.o ctbmv_CUN.o ctbmv_CLU.o ctbmv_CLN.o ctbsv_NUU.o ctbsv_NUN.o ctbsv_NLU.o ctbsv_NLN.o ctbsv_TUU.o ctbsv_TUN.o ctbsv_TLU.o ctbsv_TLN.o ctbsv_RUU.o ctbsv_RUN.o ctbsv_RLU.o ctbsv_RLN.o ctbsv_CUU.o ctbsv_CUN.o ctbsv_CLU.o ctbsv_CLN.o ctpmv_NUU.o ctpmv_NUN.o ctpmv_NLU.o ctpmv_NLN.o ctpmv_TUU.o ctpmv_TUN.o ctpmv_TLU.o ctpmv_TLN.o ctpmv_RUU.o ctpmv_RUN.o ctpmv_RLU.o ctpmv_RLN.o ctpmv_CUU.o ctpmv_CUN.o ctpmv_CLU.o ctpmv_CLN.o ctpsv_NUU.o ctpsv_NUN.o ctpsv_NLU.o ctpsv_NLN.o ctpsv_TUU.o ctpsv_TUN.o ctpsv_TLU.o ctpsv_TLN.o ctpsv_RUU.o ctpsv_RUN.o ctpsv_RLU.o ctpsv_RLN.o ctpsv_CUU.o ctpsv_CUN.o ctpsv_CLU.o ctpsv_CLN.o ctrmv_NUU.o ctrmv_NUN.o ctrmv_NLU.o ctrmv_NLN.o ctrmv_TUU.o ctrmv_TUN.o ctrmv_TLU.o ctrmv_TLN.o ctrmv_RUU.o ctrmv_RUN.o ctrmv_RLU.o ctrmv_RLN.o ctrmv_CUU.o ctrmv_CUN.o ctrmv_CLU.o ctrmv_CLN.o ctrsv_NUU.o ctrsv_NUN.o ctrsv_NLU.o ctrsv_NLN.o ctrsv_TUU.o ctrsv_TUN.o ctrsv_TLU.o ctrsv_TLN.o ctrsv_RUU.o ctrsv_RUN.o ctrsv_RLU.o ctrsv_RLN.o ctrsv_CUU.o ctrsv_CUN.o ctrsv_CLU.o ctrsv_CLN.o cgemv_thread_n.o cgemv_thread_t.o cgemv_thread_r.o cgemv_thread_c.o cgemv_thread_o.o cgemv_thread_u.o cgemv_thread_s.o cgemv_thread_d.o cger_thread_U.o cger_thread_C.o cger_thread_V.o cger_thread_D.o csymv_thread_U.o csymv_thread_L.o chemv_thread_U.o chemv_thread_L.o chemv_thread_V.o chemv_thread_M.o csyr_thread_U.o csyr_thread_L.o cher_thread_U.o cher_thread_L.o cher_thread_V.o cher_thread_M.o csyr2_thread_U.o csyr2_thread_L.o cher2_thread_U.o cher2_thread_L.o cher2_thread_V.o cher2_thread_M.o cspr_thread_U.o cspr_thread_L.o chpr_thread_U.o chpr_thread_L.o chpr_thread_V.o chpr_thread_M.o cspr2_thread_U.o cspr2_thread_L.o chpr2_thread_U.o chpr2_thread_L.o chpr2_thread_V.o chpr2_thread_M.o ctrmv_thread_NUU.o ctrmv_thread_NUN.o ctrmv_thread_NLU.o ctrmv_thread_NLN.o ctrmv_thread_TUU.o ctrmv_thread_TUN.o ctrmv_thread_TLU.o ctrmv_thread_TLN.o ctrmv_thread_RUU.o ctrmv_thread_RUN.o ctrmv_thread_RLU.o ctrmv_thread_RLN.o ctrmv_thread_CUU.o ctrmv_thread_CUN.o ctrmv_thread_CLU.o ctrmv_thread_CLN.o cspmv_thread_U.o cspmv_thread_L.o chpmv_thread_U.o chpmv_thread_L.o chpmv_thread_V.o chpmv_thread_M.o ctpmv_thread_NUU.o ctpmv_thread_NUN.o ctpmv_thread_NLU.o ctpmv_thread_NLN.o ctpmv_thread_TUU.o ctpmv_thread_TUN.o ctpmv_thread_TLU.o ctpmv_thread_TLN.o ctpmv_thread_RUU.o ctpmv_thread_RUN.o ctpmv_thread_RLU.o ctpmv_thread_RLN.o ctpmv_thread_CUU.o ctpmv_thread_CUN.o ctpmv_thread_CLU.o ctpmv_thread_CLN.o cgbmv_thread_n.o cgbmv_thread_t.o cgbmv_thread_r.o cgbmv_thread_c.o cgbmv_thread_o.o cgbmv_thread_u.o cgbmv_thread_s.o cgbmv_thread_d.o csbmv_thread_U.o csbmv_thread_L.o chbmv_thread_U.o chbmv_thread_L.o chbmv_thread_V.o chbmv_thread_M.o ctbmv_thread_NUU.o ctbmv_thread_NUN.o ctbmv_thread_NLU.o ctbmv_thread_NLN.o ctbmv_thread_TUU.o ctbmv_thread_TUN.o ctbmv_thread_TLU.o ctbmv_thread_TLN.o ctbmv_thread_RUU.o ctbmv_thread_RUN.o ctbmv_thread_RLU.o ctbmv_thread_RLN.o ctbmv_thread_CUU.o ctbmv_thread_CUN.o ctbmv_thread_CLU.o ctbmv_thread_CLN.o zgbmv_n.o zgbmv_t.o zgbmv_r.o zgbmv_c.o zgbmv_o.o zgbmv_u.o zgbmv_s.o zgbmv_d.o zhbmv_U.o zhbmv_L.o zhbmv_V.o zhbmv_M.o zher_U.o zher_L.o zher_V.o zher_M.o zher2_U.o zher2_L.o zher2_V.o zher2_M.o zhpmv_U.o zhpmv_L.o zhpmv_V.o zhpmv_M.o zhpr_U.o zhpr_L.o zhpr_V.o zhpr_M.o zhpr2_U.o zhpr2_L.o zhpr2_V.o zhpr2_M.o zsbmv_U.o zsbmv_L.o zspmv_U.o zspmv_L.o zspr_U.o zspr_L.o zspr2_U.o zspr2_L.o zsyr_U.o zsyr_L.o zsyr2_U.o zsyr2_L.o ztbmv_NUU.o ztbmv_NUN.o ztbmv_NLU.o ztbmv_NLN.o ztbmv_TUU.o ztbmv_TUN.o ztbmv_TLU.o ztbmv_TLN.o ztbmv_RUU.o ztbmv_RUN.o ztbmv_RLU.o ztbmv_RLN.o ztbmv_CUU.o ztbmv_CUN.o ztbmv_CLU.o ztbmv_CLN.o ztbsv_NUU.o ztbsv_NUN.o ztbsv_NLU.o ztbsv_NLN.o ztbsv_TUU.o ztbsv_TUN.o ztbsv_TLU.o ztbsv_TLN.o ztbsv_RUU.o ztbsv_RUN.o ztbsv_RLU.o ztbsv_RLN.o ztbsv_CUU.o ztbsv_CUN.o ztbsv_CLU.o ztbsv_CLN.o ztpmv_NUU.o ztpmv_NUN.o ztpmv_NLU.o ztpmv_NLN.o ztpmv_TUU.o ztpmv_TUN.o ztpmv_TLU.o ztpmv_TLN.o ztpmv_RUU.o ztpmv_RUN.o ztpmv_RLU.o ztpmv_RLN.o ztpmv_CUU.o ztpmv_CUN.o ztpmv_CLU.o ztpmv_CLN.o ztpsv_NUU.o ztpsv_NUN.o ztpsv_NLU.o ztpsv_NLN.o ztpsv_TUU.o ztpsv_TUN.o ztpsv_TLU.o ztpsv_TLN.o ztpsv_RUU.o ztpsv_RUN.o ztpsv_RLU.o ztpsv_RLN.o ztpsv_CUU.o ztpsv_CUN.o ztpsv_CLU.o ztpsv_CLN.o ztrmv_NUU.o ztrmv_NUN.o ztrmv_NLU.o ztrmv_NLN.o ztrmv_TUU.o ztrmv_TUN.o ztrmv_TLU.o ztrmv_TLN.o ztrmv_RUU.o ztrmv_RUN.o ztrmv_RLU.o ztrmv_RLN.o ztrmv_CUU.o ztrmv_CUN.o ztrmv_CLU.o ztrmv_CLN.o ztrsv_NUU.o ztrsv_NUN.o ztrsv_NLU.o ztrsv_NLN.o ztrsv_TUU.o ztrsv_TUN.o ztrsv_TLU.o ztrsv_TLN.o ztrsv_RUU.o ztrsv_RUN.o ztrsv_RLU.o ztrsv_RLN.o ztrsv_CUU.o ztrsv_CUN.o ztrsv_CLU.o ztrsv_CLN.o zgemv_thread_n.o zgemv_thread_t.o zgemv_thread_r.o zgemv_thread_c.o zgemv_thread_o.o zgemv_thread_u.o zgemv_thread_s.o zgemv_thread_d.o zger_thread_U.o zger_thread_C.o zger_thread_V.o zger_thread_D.o zsymv_thread_U.o zsymv_thread_L.o zhemv_thread_U.o zhemv_thread_L.o zhemv_thread_V.o zhemv_thread_M.o zsyr_thread_U.o zsyr_thread_L.o zher_thread_U.o zher_thread_L.o zher_thread_V.o zher_thread_M.o zsyr2_thread_U.o zsyr2_thread_L.o zher2_thread_U.o zher2_thread_L.o zher2_thread_V.o zher2_thread_M.o zspr_thread_U.o zspr_thread_L.o zhpr_thread_U.o zhpr_thread_L.o zhpr_thread_V.o zhpr_thread_M.o zspr2_thread_U.o zspr2_thread_L.o zhpr2_thread_U.o zhpr2_thread_L.o zhpr2_thread_V.o zhpr2_thread_M.o ztrmv_thread_NUU.o ztrmv_thread_NUN.o ztrmv_thread_NLU.o ztrmv_thread_NLN.o ztrmv_thread_TUU.o ztrmv_thread_TUN.o ztrmv_thread_TLU.o ztrmv_thread_TLN.o ztrmv_thread_RUU.o ztrmv_thread_RUN.o ztrmv_thread_RLU.o ztrmv_thread_RLN.o ztrmv_thread_CUU.o ztrmv_thread_CUN.o ztrmv_thread_CLU.o ztrmv_thread_CLN.o zspmv_thread_U.o zspmv_thread_L.o zhpmv_thread_U.o zhpmv_thread_L.o zhpmv_thread_V.o zhpmv_thread_M.o ztpmv_thread_NUU.o ztpmv_thread_NUN.o ztpmv_thread_NLU.o ztpmv_thread_NLN.o ztpmv_thread_TUU.o ztpmv_thread_TUN.o ztpmv_thread_TLU.o ztpmv_thread_TLN.o ztpmv_thread_RUU.o ztpmv_thread_RUN.o ztpmv_thread_RLU.o ztpmv_thread_RLN.o ztpmv_thread_CUU.o ztpmv_thread_CUN.o ztpmv_thread_CLU.o ztpmv_thread_CLN.o zgbmv_thread_n.o zgbmv_thread_t.o zgbmv_thread_r.o zgbmv_thread_c.o zgbmv_thread_o.o zgbmv_thread_u.o zgbmv_thread_s.o zgbmv_thread_d.o zsbmv_thread_U.o zsbmv_thread_L.o zhbmv_thread_U.o zhbmv_thread_L.o zhbmv_thread_V.o zhbmv_thread_M.o ztbmv_thread_NUU.o ztbmv_thread_NUN.o ztbmv_thread_NLU.o ztbmv_thread_NLN.o ztbmv_thread_TUU.o ztbmv_thread_TUN.o ztbmv_thread_TLU.o ztbmv_thread_TLN.o ztbmv_thread_RUU.o ztbmv_thread_RUN.o ztbmv_thread_RLU.o ztbmv_thread_RLN.o ztbmv_thread_CUU.o ztbmv_thread_CUN.o ztbmv_thread_CLU.o ztbmv_thread_CLN.o
make[1]: Leaving directory '/my/path/OpenBLAS-master/driver/level2'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/OpenBLAS-master/driver/level3'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../../libopenblas_armv8p-r0.2.20.a sgemm_nn.o sgemm_nt.o sgemm_tn.o sgemm_tt.o strmm_LNUU.o strmm_LNUN.o strmm_LNLU.o strmm_LNLN.o strmm_LTUU.o strmm_LTUN.o strmm_LTLU.o strmm_LTLN.o strmm_RNUU.o strmm_RNUN.o strmm_RNLU.o strmm_RNLN.o strmm_RTUU.o strmm_RTUN.o strmm_RTLU.o strmm_RTLN.o strsm_LNUU.o strsm_LNUN.o strsm_LNLU.o strsm_LNLN.o strsm_LTUU.o strsm_LTUN.o strsm_LTLU.o strsm_LTLN.o strsm_RNUU.o strsm_RNUN.o strsm_RNLU.o strsm_RNLN.o strsm_RTUU.o strsm_RTUN.o strsm_RTLU.o strsm_RTLN.o ssymm_LU.o ssymm_LL.o ssymm_RU.o ssymm_RL.o ssyrk_UN.o ssyrk_UT.o ssyrk_LN.o ssyrk_LT.o ssyr2k_UN.o ssyr2k_UT.o ssyr2k_LN.o ssyr2k_LT.o ssyrk_kernel_U.o ssyrk_kernel_L.o ssyr2k_kernel_U.o ssyr2k_kernel_L.o sgemm_thread_nn.o sgemm_thread_nt.o sgemm_thread_tn.o sgemm_thread_tt.o ssymm_thread_LU.o ssymm_thread_LL.o ssymm_thread_RU.o ssymm_thread_RL.o ssyrk_thread_UN.o ssyrk_thread_UT.o ssyrk_thread_LN.o ssyrk_thread_LT.o dgemm_nn.o dgemm_nt.o dgemm_tn.o dgemm_tt.o dtrmm_LNUU.o dtrmm_LNUN.o dtrmm_LNLU.o dtrmm_LNLN.o dtrmm_LTUU.o dtrmm_LTUN.o dtrmm_LTLU.o dtrmm_LTLN.o dtrmm_RNUU.o dtrmm_RNUN.o dtrmm_RNLU.o dtrmm_RNLN.o dtrmm_RTUU.o dtrmm_RTUN.o dtrmm_RTLU.o dtrmm_RTLN.o dtrsm_LNUU.o dtrsm_LNUN.o dtrsm_LNLU.o dtrsm_LNLN.o dtrsm_LTUU.o dtrsm_LTUN.o dtrsm_LTLU.o dtrsm_LTLN.o dtrsm_RNUU.o dtrsm_RNUN.o dtrsm_RNLU.o dtrsm_RNLN.o dtrsm_RTUU.o dtrsm_RTUN.o dtrsm_RTLU.o dtrsm_RTLN.o dsymm_LU.o dsymm_LL.o dsymm_RU.o dsymm_RL.o dsyrk_UN.o dsyrk_UT.o dsyrk_LN.o dsyrk_LT.o dsyr2k_UN.o dsyr2k_UT.o dsyr2k_LN.o dsyr2k_LT.o dsyrk_kernel_U.o dsyrk_kernel_L.o dsyr2k_kernel_U.o dsyr2k_kernel_L.o dgemm_thread_nn.o dgemm_thread_nt.o dgemm_thread_tn.o dgemm_thread_tt.o dsymm_thread_LU.o dsymm_thread_LL.o dsymm_thread_RU.o dsymm_thread_RL.o dsyrk_thread_UN.o dsyrk_thread_UT.o dsyrk_thread_LN.o dsyrk_thread_LT.o cgemm_nn.o cgemm_cn.o cgemm_tn.o cgemm_nc.o cgemm_nt.o cgemm_cc.o cgemm_ct.o cgemm_tc.o cgemm_tt.o cgemm_nr.o cgemm_tr.o cgemm_cr.o cgemm_rn.o cgemm_rt.o cgemm_rc.o cgemm_rr.o ctrmm_LNUU.o ctrmm_LNUN.o ctrmm_LNLU.o ctrmm_LNLN.o ctrmm_LTUU.o ctrmm_LTUN.o ctrmm_LTLU.o ctrmm_LTLN.o ctrmm_LRUU.o ctrmm_LRUN.o ctrmm_LRLU.o ctrmm_LRLN.o ctrmm_LCUU.o ctrmm_LCUN.o ctrmm_LCLU.o ctrmm_LCLN.o ctrmm_RNUU.o ctrmm_RNUN.o ctrmm_RNLU.o ctrmm_RNLN.o ctrmm_RTUU.o ctrmm_RTUN.o ctrmm_RTLU.o ctrmm_RTLN.o ctrmm_RRUU.o ctrmm_RRUN.o ctrmm_RRLU.o ctrmm_RRLN.o ctrmm_RCUU.o ctrmm_RCUN.o ctrmm_RCLU.o ctrmm_RCLN.o ctrsm_LNUU.o ctrsm_LNUN.o ctrsm_LNLU.o ctrsm_LNLN.o ctrsm_LTUU.o ctrsm_LTUN.o ctrsm_LTLU.o ctrsm_LTLN.o ctrsm_LRUU.o ctrsm_LRUN.o ctrsm_LRLU.o ctrsm_LRLN.o ctrsm_LCUU.o ctrsm_LCUN.o ctrsm_LCLU.o ctrsm_LCLN.o ctrsm_RNUU.o ctrsm_RNUN.o ctrsm_RNLU.o ctrsm_RNLN.o ctrsm_RTUU.o ctrsm_RTUN.o ctrsm_RTLU.o ctrsm_RTLN.o ctrsm_RRUU.o ctrsm_RRUN.o ctrsm_RRLU.o ctrsm_RRLN.o ctrsm_RCUU.o ctrsm_RCUN.o ctrsm_RCLU.o ctrsm_RCLN.o csymm_LU.o csymm_LL.o csymm_RU.o csymm_RL.o chemm_LU.o chemm_LL.o chemm_RU.o chemm_RL.o csyrk_UN.o csyrk_UT.o csyrk_LN.o csyrk_LT.o cherk_UN.o cherk_UC.o cherk_LN.o cherk_LC.o csyr2k_UN.o csyr2k_UT.o csyr2k_LN.o csyr2k_LT.o cher2k_UN.o cher2k_UC.o cher2k_LN.o cher2k_LC.o csyrk_kernel_U.o csyrk_kernel_L.o cherk_kernel_UN.o cherk_kernel_UC.o cherk_kernel_LN.o cherk_kernel_LC.o csyr2k_kernel_U.o csyr2k_kernel_L.o cher2k_kernel_UN.o cher2k_kernel_UC.o cher2k_kernel_LN.o cher2k_kernel_LC.o cgemm_thread_nn.o cgemm_thread_nt.o cgemm_thread_nr.o cgemm_thread_nc.o cgemm_thread_tn.o cgemm_thread_tt.o cgemm_thread_tr.o cgemm_thread_tc.o cgemm_thread_rn.o cgemm_thread_rt.o cgemm_thread_rr.o cgemm_thread_rc.o cgemm_thread_cn.o cgemm_thread_ct.o cgemm_thread_cr.o cgemm_thread_cc.o csymm_thread_LU.o csymm_thread_LL.o csymm_thread_RU.o csymm_thread_RL.o chemm_thread_LU.o chemm_thread_LL.o chemm_thread_RU.o chemm_thread_RL.o csyrk_thread_UN.o csyrk_thread_UT.o csyrk_thread_LN.o csyrk_thread_LT.o cherk_thread_UN.o cherk_thread_UC.o cherk_thread_LN.o cherk_thread_LC.o zgemm_nn.o zgemm_cn.o zgemm_tn.o zgemm_nc.o zgemm_nt.o zgemm_cc.o zgemm_ct.o zgemm_tc.o zgemm_tt.o zgemm_nr.o zgemm_tr.o zgemm_cr.o zgemm_rn.o zgemm_rt.o zgemm_rc.o zgemm_rr.o ztrmm_LNUU.o ztrmm_LNUN.o ztrmm_LNLU.o ztrmm_LNLN.o ztrmm_LTUU.o ztrmm_LTUN.o ztrmm_LTLU.o ztrmm_LTLN.o ztrmm_LRUU.o ztrmm_LRUN.o ztrmm_LRLU.o ztrmm_LRLN.o ztrmm_LCUU.o ztrmm_LCUN.o ztrmm_LCLU.o ztrmm_LCLN.o ztrmm_RNUU.o ztrmm_RNUN.o ztrmm_RNLU.o ztrmm_RNLN.o ztrmm_RTUU.o ztrmm_RTUN.o ztrmm_RTLU.o ztrmm_RTLN.o ztrmm_RRUU.o ztrmm_RRUN.o ztrmm_RRLU.o ztrmm_RRLN.o ztrmm_RCUU.o ztrmm_RCUN.o ztrmm_RCLU.o ztrmm_RCLN.o ztrsm_LNUU.o ztrsm_LNUN.o ztrsm_LNLU.o ztrsm_LNLN.o ztrsm_LTUU.o ztrsm_LTUN.o ztrsm_LTLU.o ztrsm_LTLN.o ztrsm_LRUU.o ztrsm_LRUN.o ztrsm_LRLU.o ztrsm_LRLN.o ztrsm_LCUU.o ztrsm_LCUN.o ztrsm_LCLU.o ztrsm_LCLN.o ztrsm_RNUU.o ztrsm_RNUN.o ztrsm_RNLU.o ztrsm_RNLN.o ztrsm_RTUU.o ztrsm_RTUN.o ztrsm_RTLU.o ztrsm_RTLN.o ztrsm_RRUU.o ztrsm_RRUN.o ztrsm_RRLU.o ztrsm_RRLN.o ztrsm_RCUU.o ztrsm_RCUN.o ztrsm_RCLU.o ztrsm_RCLN.o zsymm_LU.o zsymm_LL.o zsymm_RU.o zsymm_RL.o zhemm_LU.o zhemm_LL.o zhemm_RU.o zhemm_RL.o zsyrk_UN.o zsyrk_UT.o zsyrk_LN.o zsyrk_LT.o zherk_UN.o zherk_UC.o zherk_LN.o zherk_LC.o zsyr2k_UN.o zsyr2k_UT.o zsyr2k_LN.o zsyr2k_LT.o zher2k_UN.o zher2k_UC.o zher2k_LN.o zher2k_LC.o zsyrk_kernel_U.o zsyrk_kernel_L.o zherk_kernel_UN.o zherk_kernel_UC.o zherk_kernel_LN.o zherk_kernel_LC.o zsyr2k_kernel_U.o zsyr2k_kernel_L.o zher2k_kernel_UN.o zher2k_kernel_UC.o zher2k_kernel_LN.o zher2k_kernel_LC.o zgemm_thread_nn.o zgemm_thread_nt.o zgemm_thread_nr.o zgemm_thread_nc.o zgemm_thread_tn.o zgemm_thread_tt.o zgemm_thread_tr.o zgemm_thread_tc.o zgemm_thread_rn.o zgemm_thread_rt.o zgemm_thread_rr.o zgemm_thread_rc.o zgemm_thread_cn.o zgemm_thread_ct.o zgemm_thread_cr.o zgemm_thread_cc.o zsymm_thread_LU.o zsymm_thread_LL.o zsymm_thread_RU.o zsymm_thread_RL.o zhemm_thread_LU.o zhemm_thread_LL.o zhemm_thread_RU.o zhemm_thread_RL.o zsyrk_thread_UN.o zsyrk_thread_UT.o zsyrk_thread_LN.o zsyrk_thread_LT.o zherk_thread_UN.o zherk_thread_UC.o zherk_thread_LN.o zherk_thread_LC.o gemm_thread_m.o gemm_thread_n.o gemm_thread_mn.o gemm_thread_variable.o syrk_thread.o
make[1]: Leaving directory '/my/path/OpenBLAS-master/driver/level3'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/OpenBLAS-master/driver/others'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../../libopenblas_armv8p-r0.2.20.a memory.o xerbla.o c_abs.o z_abs.o openblas_set_num_threads.o openblas_get_num_threads.o openblas_get_num_procs.o openblas_get_config.o openblas_get_parallel.o openblas_error_handle.o openblas_env.o blas_server.o divtable.o blasL1thread.o parameter.o
make[1]: Leaving directory '/my/path/OpenBLAS-master/driver/others'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/OpenBLAS-master/kernel'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../libopenblas_armv8p-r0.2.20.a samax_k.o samin_k.o smax_k.o smin_k.o isamax_k.o isamin_k.o ismax_k.o ismin_k.o sasum_k.o saxpy_k.o scopy_k.o sdot_k.o sdsdot_k.o dsdot_k.o snrm2_k.o srot_k.o sscal_k.o sswap_k.o saxpby_k.o sgemv_n.o sgemv_t.o ssymv_U.o ssymv_L.o sger_k.o sgemm_kernel.o sgemm_oncopy.o sgemm_otcopy.o sgemm_beta.o strmm_kernel_LN.o strmm_kernel_LT.o strmm_kernel_RN.o strmm_kernel_RT.o strsm_kernel_LN.o strsm_kernel_LT.o strsm_kernel_RN.o strsm_kernel_RT.o strmm_iunucopy.o strmm_iunncopy.o strmm_ilnucopy.o strmm_ilnncopy.o strmm_iutucopy.o strmm_iutncopy.o strmm_iltucopy.o strmm_iltncopy.o strmm_ounucopy.o strmm_ounncopy.o strmm_olnucopy.o strmm_olnncopy.o strmm_outucopy.o strmm_outncopy.o strmm_oltucopy.o strmm_oltncopy.o strsm_iunucopy.o strsm_iunncopy.o strsm_ilnucopy.o strsm_ilnncopy.o strsm_iutucopy.o strsm_iutncopy.o strsm_iltucopy.o strsm_iltncopy.o strsm_ounucopy.o strsm_ounncopy.o strsm_olnucopy.o strsm_olnncopy.o strsm_outucopy.o strsm_outncopy.o strsm_oltucopy.o strsm_oltncopy.o ssymm_iutcopy.o ssymm_iltcopy.o ssymm_outcopy.o ssymm_oltcopy.o somatcopy_k_cn.o somatcopy_k_rn.o somatcopy_k_ct.o somatcopy_k_rt.o simatcopy_k_cn.o simatcopy_k_rn.o simatcopy_k_ct.o simatcopy_k_rt.o sgeadd_k.o damax_k.o damin_k.o dmax_k.o dmin_k.o idamax_k.o idamin_k.o idmax_k.o idmin_k.o dasum_k.o daxpy_k.o dcopy_k.o ddot_k.o dnrm2_k.o drot_k.o dscal_k.o dswap_k.o daxpby_k.o dgemv_n.o dgemv_t.o dsymv_U.o dsymv_L.o dger_k.o dgemm_kernel.o dgemm_oncopy.o dgemm_otcopy.o dgemm_beta.o dtrmm_kernel_LN.o dtrmm_kernel_LT.o dtrmm_kernel_RN.o dtrmm_kernel_RT.o dtrsm_kernel_LN.o dtrsm_kernel_LT.o dtrsm_kernel_RN.o dtrsm_kernel_RT.o dtrmm_iunucopy.o dtrmm_iunncopy.o dtrmm_ilnucopy.o dtrmm_ilnncopy.o dtrmm_iutucopy.o dtrmm_iutncopy.o dtrmm_iltucopy.o dtrmm_iltncopy.o dtrmm_ounucopy.o dtrmm_ounncopy.o dtrmm_olnucopy.o dtrmm_olnncopy.o dtrmm_outucopy.o dtrmm_outncopy.o dtrmm_oltucopy.o dtrmm_oltncopy.o dtrsm_iunucopy.o dtrsm_iunncopy.o dtrsm_ilnucopy.o dtrsm_ilnncopy.o dtrsm_iutucopy.o dtrsm_iutncopy.o dtrsm_iltucopy.o dtrsm_iltncopy.o dtrsm_ounucopy.o dtrsm_ounncopy.o dtrsm_olnucopy.o dtrsm_olnncopy.o dtrsm_outucopy.o dtrsm_outncopy.o dtrsm_oltucopy.o dtrsm_oltncopy.o dsymm_iutcopy.o dsymm_iltcopy.o dsymm_outcopy.o dsymm_oltcopy.o domatcopy_k_cn.o domatcopy_k_rn.o domatcopy_k_ct.o domatcopy_k_rt.o dimatcopy_k_cn.o dimatcopy_k_rn.o dimatcopy_k_ct.o dimatcopy_k_rt.o dgeadd_k.o camax_k.o camin_k.o icamax_k.o icamin_k.o casum_k.o caxpy_k.o caxpyc_k.o ccopy_k.o cdotc_k.o cdotu_k.o cnrm2_k.o csrot_k.o cscal_k.o cswap_k.o caxpby_k.o cgemv_n.o cgemv_t.o cgemv_r.o cgemv_c.o cgemv_o.o cgemv_u.o cgemv_s.o cgemv_d.o csymv_U.o csymv_L.o chemv_U.o chemv_L.o chemv_V.o chemv_M.o cgeru_k.o cgerc_k.o cgerv_k.o cgerd_k.o cgemm_kernel_n.o cgemm_kernel_r.o cgemm_kernel_l.o cgemm_kernel_b.o cgemm_oncopy.o cgemm_otcopy.o cgemm_beta.o ctrmm_kernel_LN.o ctrmm_kernel_LT.o ctrmm_kernel_LR.o ctrmm_kernel_LC.o ctrmm_kernel_RN.o ctrmm_kernel_RT.o ctrmm_kernel_RR.o ctrmm_kernel_RC.o ctrsm_kernel_LN.o ctrsm_kernel_LT.o ctrsm_kernel_LR.o ctrsm_kernel_LC.o ctrsm_kernel_RN.o ctrsm_kernel_RT.o ctrsm_kernel_RR.o ctrsm_kernel_RC.o ctrmm_iunucopy.o ctrmm_iunncopy.o ctrmm_ilnucopy.o ctrmm_ilnncopy.o ctrmm_iutucopy.o ctrmm_iutncopy.o ctrmm_iltucopy.o ctrmm_iltncopy.o ctrmm_ounucopy.o ctrmm_ounncopy.o ctrmm_olnucopy.o ctrmm_olnncopy.o ctrmm_outucopy.o ctrmm_outncopy.o ctrmm_oltucopy.o ctrmm_oltncopy.o ctrsm_iunucopy.o ctrsm_iunncopy.o ctrsm_ilnucopy.o ctrsm_ilnncopy.o ctrsm_iutucopy.o ctrsm_iutncopy.o ctrsm_iltucopy.o ctrsm_iltncopy.o ctrsm_ounucopy.o ctrsm_ounncopy.o ctrsm_olnucopy.o ctrsm_olnncopy.o ctrsm_outucopy.o ctrsm_outncopy.o ctrsm_oltucopy.o ctrsm_oltncopy.o csymm_iutcopy.o csymm_iltcopy.o csymm_outcopy.o csymm_oltcopy.o chemm_iutcopy.o chemm_iltcopy.o chemm_outcopy.o chemm_oltcopy.o comatcopy_k_cn.o comatcopy_k_rn.o comatcopy_k_ct.o comatcopy_k_rt.o comatcopy_k_cnc.o comatcopy_k_rnc.o comatcopy_k_ctc.o comatcopy_k_rtc.o cimatcopy_k_cn.o cimatcopy_k_rn.o cimatcopy_k_ct.o cimatcopy_k_rt.o cimatcopy_k_cnc.o cimatcopy_k_rnc.o cimatcopy_k_ctc.o cimatcopy_k_rtc.o cgeadd_k.o zamax_k.o zamin_k.o izamax_k.o izamin_k.o zasum_k.o zaxpy_k.o zaxpyc_k.o zcopy_k.o zdotc_k.o zdotu_k.o znrm2_k.o zdrot_k.o zscal_k.o zswap_k.o zaxpby_k.o zgemv_n.o zgemv_t.o zgemv_r.o zgemv_c.o zgemv_o.o zgemv_u.o zgemv_s.o zgemv_d.o zsymv_U.o zsymv_L.o zhemv_U.o zhemv_L.o zhemv_V.o zhemv_M.o zgeru_k.o zgerc_k.o zgerv_k.o zgerd_k.o zgemm_kernel_n.o zgemm_kernel_r.o zgemm_kernel_l.o zgemm_kernel_b.o zgemm_oncopy.o zgemm_otcopy.o zgemm_beta.o ztrmm_kernel_LN.o ztrmm_kernel_LT.o ztrmm_kernel_LR.o ztrmm_kernel_LC.o ztrmm_kernel_RN.o ztrmm_kernel_RT.o ztrmm_kernel_RR.o ztrmm_kernel_RC.o ztrsm_kernel_LN.o ztrsm_kernel_LT.o ztrsm_kernel_LR.o ztrsm_kernel_LC.o ztrsm_kernel_RN.o ztrsm_kernel_RT.o ztrsm_kernel_RR.o ztrsm_kernel_RC.o ztrmm_iunucopy.o ztrmm_iunncopy.o ztrmm_ilnucopy.o ztrmm_ilnncopy.o ztrmm_iutucopy.o ztrmm_iutncopy.o ztrmm_iltucopy.o ztrmm_iltncopy.o ztrmm_ounucopy.o ztrmm_ounncopy.o ztrmm_olnucopy.o ztrmm_olnncopy.o ztrmm_outucopy.o ztrmm_outncopy.o ztrmm_oltucopy.o ztrmm_oltncopy.o ztrsm_iunucopy.o ztrsm_iunncopy.o ztrsm_ilnucopy.o ztrsm_ilnncopy.o ztrsm_iutucopy.o ztrsm_iutncopy.o ztrsm_iltucopy.o ztrsm_iltncopy.o ztrsm_ounucopy.o ztrsm_ounncopy.o ztrsm_olnucopy.o ztrsm_olnncopy.o ztrsm_outucopy.o ztrsm_outncopy.o ztrsm_oltucopy.o ztrsm_oltncopy.o zsymm_iutcopy.o zsymm_iltcopy.o zsymm_outcopy.o zsymm_oltcopy.o zhemm_iutcopy.o zhemm_iltcopy.o zhemm_outcopy.o zhemm_oltcopy.o zomatcopy_k_cn.o zomatcopy_k_rn.o zomatcopy_k_ct.o zomatcopy_k_rt.o zomatcopy_k_cnc.o zomatcopy_k_rnc.o zomatcopy_k_ctc.o zomatcopy_k_rtc.o zimatcopy_k_cn.o zimatcopy_k_rn.o zimatcopy_k_ct.o zimatcopy_k_rt.o zimatcopy_k_cnc.o zimatcopy_k_rnc.o zimatcopy_k_ctc.o zimatcopy_k_rtc.o zgeadd_k.o lsame.o scabs1.o dcabs1.o
make[1]: Leaving directory '/my/path/OpenBLAS-master/kernel'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/OpenBLAS-master/exports'
clang -target aarch64-none-linux-android --sysroot /my/path/Android/ndk/android-ndk-r16b/platforms/android-27/arch-arm64 -gcc-toolchain /my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64 -O2 -DMAX_STACK_ALLOC=2048 -Wall -DF_INTERFACE_GFORT -fPIC -DNO_LAPACK -DNO_LAPACKE -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=8 -march=armv8-a -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I.. -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -shared -o ../libopenblas_armv8p-r0.2.20.so \
-Wl,--whole-archive ../libopenblas_armv8p-r0.2.20.a -Wl,--no-whole-archive \
-Wl,-soname,libopenblas.so -lm -lm
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: ../libopenblas_armv8p-r0.2.20.a(cblas_isamax.o): Relocations in generic ELF (EM: 62)
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: ../libopenblas_armv8p-r0.2.20.a(cblas_isamax.o): Relocations in generic ELF (EM: 62)
../libopenblas_armv8p-r0.2.20.a(cblas_isamax.o): error adding symbols: File in wrong format
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Makefile:139: recipe for target '../libopenblas_armv8p-r0.2.20.so' failed
make[1]: *** [../libopenblas_armv8p-r0.2.20.so] Error 1
make[1]: Leaving directory '/my/path/OpenBLAS-master/exports'
Makefile:90: recipe for target 'shared' failed
make: *** [shared] Error 2
martin-frbg commented 6 years ago

Sorry. AS= assembler, maybe it is finding the x86 one from your Ubuntu (from what I managed to find out, the "(EM:62)" part of the error message means "x86_64 format") . So I suggest you try with AS=${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-as just like with AR.

cefengxu commented 6 years ago

thx! @martin-frbg

# As Config.
export AS="${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-as"

# complie
make TARGET=ARMV8 ONLY_CBLAS=1 as=${AS} AR=${AR} CC="clang ${CLANG_FLAGS}" HOSTCC=gcc -j4

is it right ? the new error issues output

as: 未知的选项 `--64'
as: 未知的选项 `--64'
make: *** [getarch] Error 1
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/cETOOL/OpenBLAS-master/interface'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../libopenblas_haswellp-r0.2.20.a saxpy.o sswap.o scopy.o sscal.o sdot.o sdsdot.o dsdot.o sasum.o snrm2.o smax.o samax.o ismax.o isamax.o smin.o samin.o ismin.o isamin.o srot.o srotg.o srotm.o srotmg.o saxpby.o cblas_isamax.o cblas_sasum.o cblas_saxpy.o cblas_scopy.o cblas_sdot.o cblas_sdsdot.o cblas_dsdot.o cblas_srot.o cblas_srotg.o cblas_srotm.o cblas_srotmg.o cblas_sscal.o cblas_sswap.o cblas_snrm2.o cblas_saxpby.o sgemv.o sger.o strsv.o strmv.o ssymv.o ssyr.o ssyr2.o sgbmv.o ssbmv.o sspmv.o sspr.o sspr2.o stbsv.o stbmv.o stpsv.o stpmv.o cblas_sgemv.o cblas_sger.o cblas_ssymv.o cblas_strmv.o cblas_strsv.o cblas_ssyr.o cblas_ssyr2.o cblas_sgbmv.o cblas_ssbmv.o cblas_sspmv.o cblas_sspr.o cblas_sspr2.o cblas_stbmv.o cblas_stbsv.o cblas_stpmv.o cblas_stpsv.o sgemm.o ssymm.o strmm.o strsm.o ssyrk.o ssyr2k.o somatcopy.o simatcopy.o sgeadd.o cblas_sgemm.o cblas_ssymm.o cblas_strmm.o cblas_strsm.o cblas_ssyrk.o cblas_ssyr2k.o cblas_somatcopy.o cblas_simatcopy.o cblas_sgeadd.o daxpy.o dswap.o dcopy.o dscal.o ddot.o dasum.o dnrm2.o dmax.o damax.o idmax.o idamax.o dmin.o damin.o idmin.o idamin.o drot.o drotg.o drotm.o drotmg.o daxpby.o cblas_idamax.o cblas_dasum.o cblas_daxpy.o cblas_dcopy.o cblas_ddot.o cblas_drot.o cblas_drotg.o cblas_drotm.o cblas_drotmg.o cblas_dscal.o cblas_dswap.o cblas_dnrm2.o cblas_daxpby.o dgemv.o dger.o dtrsv.o dtrmv.o dsymv.o dsyr.o dsyr2.o dgbmv.o dsbmv.o dspmv.o dspr.o dspr2.o dtbsv.o dtbmv.o dtpsv.o dtpmv.o cblas_dgemv.o cblas_dger.o cblas_dsymv.o cblas_dtrmv.o cblas_dtrsv.o cblas_dsyr.o cblas_dsyr2.o cblas_dgbmv.o cblas_dsbmv.o cblas_dspmv.o cblas_dspr.o cblas_dspr2.o cblas_dtbmv.o cblas_dtbsv.o cblas_dtpmv.o cblas_dtpsv.o dgemm.o dsymm.o dtrmm.o dtrsm.o dsyrk.o dsyr2k.o domatcopy.o dimatcopy.o dgeadd.o cblas_dgemm.o cblas_dsymm.o cblas_dtrmm.o cblas_dtrsm.o cblas_dsyrk.o cblas_dsyr2k.o cblas_domatcopy.o cblas_dimatcopy.o cblas_dgeadd.o caxpy.o caxpyc.o cswap.o ccopy.o cscal.o csscal.o cdotc.o cdotu.o scasum.o scnrm2.o scamax.o icamax.o scamin.o icamin.o csrot.o crotg.o caxpby.o cblas_icamax.o cblas_scasum.o cblas_caxpy.o cblas_ccopy.o cblas_cdotc.o cblas_cdotu.o cblas_cdotc_sub.o cblas_cdotu_sub.o cblas_cscal.o cblas_csscal.o cblas_cswap.o cblas_scnrm2.o cblas_caxpby.o cgemv.o cgeru.o cgerc.o ctrsv.o ctrmv.o csyr2.o cgbmv.o csbmv.o cspr2.o ctbsv.o ctbmv.o ctpsv.o ctpmv.o chemv.o chbmv.o cher.o cher2.o chpmv.o chpr.o chpr2.o cblas_cgemv.o cblas_cgerc.o cblas_cgeru.o cblas_cgbmv.o cblas_chbmv.o cblas_chemv.o cblas_cher.o cblas_cher2.o cblas_chpmv.o cblas_chpr.o cblas_chpr2.o cblas_ctbmv.o cblas_ctbsv.o cblas_ctpmv.o cblas_ctpsv.o cblas_ctrmv.o cblas_ctrsv.o cgemm.o csymm.o ctrmm.o ctrsm.o csyrk.o csyr2k.o chemm.o cherk.o cher2k.o comatcopy.o cimatcopy.o cgeadd.o cgemm3m.o cblas_cgemm.o cblas_csymm.o cblas_ctrmm.o cblas_ctrsm.o cblas_csyrk.o cblas_csyr2k.o cblas_chemm.o cblas_cherk.o cblas_cher2k.o cblas_comatcopy.o cblas_cimatcopy.o cblas_cgeadd.o cblas_xerbla.o cblas_cgemm3m.o zaxpy.o zaxpyc.o zswap.o zcopy.o zscal.o zdscal.o zdotc.o zdotu.o dzasum.o dznrm2.o dzamax.o izamax.o dzamin.o izamin.o zdrot.o zrotg.o zaxpby.o cblas_izamax.o cblas_dzasum.o cblas_zaxpy.o cblas_zcopy.o cblas_zdotc.o cblas_zdotu.o cblas_zdotc_sub.o cblas_zdotu_sub.o cblas_zscal.o cblas_zdscal.o cblas_zswap.o cblas_dznrm2.o cblas_zaxpby.o zgemv.o zgeru.o zgerc.o ztrsv.o ztrmv.o zsyr2.o zgbmv.o zsbmv.o zspr2.o ztbsv.o ztbmv.o ztpsv.o ztpmv.o zhemv.o zhbmv.o zher.o zher2.o zhpmv.o zhpr.o zhpr2.o cblas_zgemv.o cblas_zgerc.o cblas_zgeru.o cblas_zgbmv.o cblas_zhbmv.o cblas_zhemv.o cblas_zher.o cblas_zher2.o cblas_zhpmv.o cblas_zhpr.o cblas_zhpr2.o cblas_ztbmv.o cblas_ztbsv.o cblas_ztpmv.o cblas_ztpsv.o cblas_ztrmv.o cblas_ztrsv.o zgemm.o zsymm.o ztrmm.o ztrsm.o zsyrk.o zsyr2k.o zhemm.o zherk.o zher2k.o zomatcopy.o zimatcopy.o zgeadd.o zgemm3m.o cblas_zgemm.o cblas_zsymm.o cblas_ztrmm.o cblas_ztrsm.o cblas_zsyrk.o cblas_zsyr2k.o cblas_zhemm.o cblas_zherk.o cblas_zher2k.o cblas_zomatcopy.o cblas_zimatcopy.o cblas_zgeadd.o cblas_zgemm3m.o
make[1]: Leaving directory '/my/path/cETOOL/OpenBLAS-master/interface'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/cETOOL/OpenBLAS-master/driver/level2'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../../libopenblas_haswellp-r0.2.20.a sgbmv_n.o sgbmv_t.o ssbmv_U.o ssbmv_L.o sspmv_U.o sspmv_L.o sspr_U.o sspr_L.o sspr2_U.o sspr2_L.o ssyr_U.o ssyr_L.o ssyr2_U.o ssyr2_L.o stbmv_NUU.o stbmv_NUN.o stbmv_NLU.o stbmv_NLN.o stbmv_TUU.o stbmv_TUN.o stbmv_TLU.o stbmv_TLN.o stbsv_NUU.o stbsv_NUN.o stbsv_NLU.o stbsv_NLN.o stbsv_TUU.o stbsv_TUN.o stbsv_TLU.o stbsv_TLN.o stpmv_NUU.o stpmv_NUN.o stpmv_NLU.o stpmv_NLN.o stpmv_TUU.o stpmv_TUN.o stpmv_TLU.o stpmv_TLN.o stpsv_NUU.o stpsv_NUN.o stpsv_NLU.o stpsv_NLN.o stpsv_TUU.o stpsv_TUN.o stpsv_TLU.o stpsv_TLN.o strmv_NUU.o strmv_NUN.o strmv_NLU.o strmv_NLN.o strmv_TUU.o strmv_TUN.o strmv_TLU.o strmv_TLN.o strsv_NUU.o strsv_NUN.o strsv_NLU.o strsv_NLN.o strsv_TUU.o strsv_TUN.o strsv_TLU.o strsv_TLN.o sgemv_thread_n.o sgemv_thread_t.o sger_thread.o ssymv_thread_U.o ssymv_thread_L.o ssyr_thread_U.o ssyr_thread_L.o ssyr2_thread_U.o ssyr2_thread_L.o sspr_thread_U.o sspr_thread_L.o sspr2_thread_U.o sspr2_thread_L.o strmv_thread_NUU.o strmv_thread_NUN.o strmv_thread_NLU.o strmv_thread_NLN.o strmv_thread_TUU.o strmv_thread_TUN.o strmv_thread_TLU.o strmv_thread_TLN.o sspmv_thread_U.o sspmv_thread_L.o stpmv_thread_NUU.o stpmv_thread_NUN.o stpmv_thread_NLU.o stpmv_thread_NLN.o stpmv_thread_TUU.o stpmv_thread_TUN.o stpmv_thread_TLU.o stpmv_thread_TLN.o sgbmv_thread_n.o sgbmv_thread_t.o ssbmv_thread_U.o ssbmv_thread_L.o stbmv_thread_NUU.o stbmv_thread_NUN.o stbmv_thread_NLU.o stbmv_thread_NLN.o stbmv_thread_TUU.o stbmv_thread_TUN.o stbmv_thread_TLU.o stbmv_thread_TLN.o dgbmv_n.o dgbmv_t.o dsbmv_U.o dsbmv_L.o dspmv_U.o dspmv_L.o dspr_U.o dspr_L.o dspr2_U.o dspr2_L.o dsyr_U.o dsyr_L.o dsyr2_U.o dsyr2_L.o dtbmv_NUU.o dtbmv_NUN.o dtbmv_NLU.o dtbmv_NLN.o dtbmv_TUU.o dtbmv_TUN.o dtbmv_TLU.o dtbmv_TLN.o dtbsv_NUU.o dtbsv_NUN.o dtbsv_NLU.o dtbsv_NLN.o dtbsv_TUU.o dtbsv_TUN.o dtbsv_TLU.o dtbsv_TLN.o dtpmv_NUU.o dtpmv_NUN.o dtpmv_NLU.o dtpmv_NLN.o dtpmv_TUU.o dtpmv_TUN.o dtpmv_TLU.o dtpmv_TLN.o dtpsv_NUU.o dtpsv_NUN.o dtpsv_NLU.o dtpsv_NLN.o dtpsv_TUU.o dtpsv_TUN.o dtpsv_TLU.o dtpsv_TLN.o dtrmv_NUU.o dtrmv_NUN.o dtrmv_NLU.o dtrmv_NLN.o dtrmv_TUU.o dtrmv_TUN.o dtrmv_TLU.o dtrmv_TLN.o dtrsv_NUU.o dtrsv_NUN.o dtrsv_NLU.o dtrsv_NLN.o dtrsv_TUU.o dtrsv_TUN.o dtrsv_TLU.o dtrsv_TLN.o dgemv_thread_n.o dgemv_thread_t.o dger_thread.o dsymv_thread_U.o dsymv_thread_L.o dsyr_thread_U.o dsyr_thread_L.o dsyr2_thread_U.o dsyr2_thread_L.o dspr_thread_U.o dspr_thread_L.o dspr2_thread_U.o dspr2_thread_L.o dtrmv_thread_NUU.o dtrmv_thread_NUN.o dtrmv_thread_NLU.o dtrmv_thread_NLN.o dtrmv_thread_TUU.o dtrmv_thread_TUN.o dtrmv_thread_TLU.o dtrmv_thread_TLN.o dspmv_thread_U.o dspmv_thread_L.o dtpmv_thread_NUU.o dtpmv_thread_NUN.o dtpmv_thread_NLU.o dtpmv_thread_NLN.o dtpmv_thread_TUU.o dtpmv_thread_TUN.o dtpmv_thread_TLU.o dtpmv_thread_TLN.o dgbmv_thread_n.o dgbmv_thread_t.o dsbmv_thread_U.o dsbmv_thread_L.o dtbmv_thread_NUU.o dtbmv_thread_NUN.o dtbmv_thread_NLU.o dtbmv_thread_NLN.o dtbmv_thread_TUU.o dtbmv_thread_TUN.o dtbmv_thread_TLU.o dtbmv_thread_TLN.o cgbmv_n.o cgbmv_t.o cgbmv_r.o cgbmv_c.o cgbmv_o.o cgbmv_u.o cgbmv_s.o cgbmv_d.o chbmv_U.o chbmv_L.o chbmv_V.o chbmv_M.o cher_U.o cher_L.o cher_V.o cher_M.o cher2_U.o cher2_L.o cher2_V.o cher2_M.o chpmv_U.o chpmv_L.o chpmv_V.o chpmv_M.o chpr_U.o chpr_L.o chpr_V.o chpr_M.o chpr2_U.o chpr2_L.o chpr2_V.o chpr2_M.o csbmv_U.o csbmv_L.o cspmv_U.o cspmv_L.o cspr_U.o cspr_L.o cspr2_U.o cspr2_L.o csyr_U.o csyr_L.o csyr2_U.o csyr2_L.o ctbmv_NUU.o ctbmv_NUN.o ctbmv_NLU.o ctbmv_NLN.o ctbmv_TUU.o ctbmv_TUN.o ctbmv_TLU.o ctbmv_TLN.o ctbmv_RUU.o ctbmv_RUN.o ctbmv_RLU.o ctbmv_RLN.o ctbmv_CUU.o ctbmv_CUN.o ctbmv_CLU.o ctbmv_CLN.o ctbsv_NUU.o ctbsv_NUN.o ctbsv_NLU.o ctbsv_NLN.o ctbsv_TUU.o ctbsv_TUN.o ctbsv_TLU.o ctbsv_TLN.o ctbsv_RUU.o ctbsv_RUN.o ctbsv_RLU.o ctbsv_RLN.o ctbsv_CUU.o ctbsv_CUN.o ctbsv_CLU.o ctbsv_CLN.o ctpmv_NUU.o ctpmv_NUN.o ctpmv_NLU.o ctpmv_NLN.o ctpmv_TUU.o ctpmv_TUN.o ctpmv_TLU.o ctpmv_TLN.o ctpmv_RUU.o ctpmv_RUN.o ctpmv_RLU.o ctpmv_RLN.o ctpmv_CUU.o ctpmv_CUN.o ctpmv_CLU.o ctpmv_CLN.o ctpsv_NUU.o ctpsv_NUN.o ctpsv_NLU.o ctpsv_NLN.o ctpsv_TUU.o ctpsv_TUN.o ctpsv_TLU.o ctpsv_TLN.o ctpsv_RUU.o ctpsv_RUN.o ctpsv_RLU.o ctpsv_RLN.o ctpsv_CUU.o ctpsv_CUN.o ctpsv_CLU.o ctpsv_CLN.o ctrmv_NUU.o ctrmv_NUN.o ctrmv_NLU.o ctrmv_NLN.o ctrmv_TUU.o ctrmv_TUN.o ctrmv_TLU.o ctrmv_TLN.o ctrmv_RUU.o ctrmv_RUN.o ctrmv_RLU.o ctrmv_RLN.o ctrmv_CUU.o ctrmv_CUN.o ctrmv_CLU.o ctrmv_CLN.o ctrsv_NUU.o ctrsv_NUN.o ctrsv_NLU.o ctrsv_NLN.o ctrsv_TUU.o ctrsv_TUN.o ctrsv_TLU.o ctrsv_TLN.o ctrsv_RUU.o ctrsv_RUN.o ctrsv_RLU.o ctrsv_RLN.o ctrsv_CUU.o ctrsv_CUN.o ctrsv_CLU.o ctrsv_CLN.o cgemv_thread_n.o cgemv_thread_t.o cgemv_thread_r.o cgemv_thread_c.o cgemv_thread_o.o cgemv_thread_u.o cgemv_thread_s.o cgemv_thread_d.o cger_thread_U.o cger_thread_C.o cger_thread_V.o cger_thread_D.o csymv_thread_U.o csymv_thread_L.o chemv_thread_U.o chemv_thread_L.o chemv_thread_V.o chemv_thread_M.o csyr_thread_U.o csyr_thread_L.o cher_thread_U.o cher_thread_L.o cher_thread_V.o cher_thread_M.o csyr2_thread_U.o csyr2_thread_L.o cher2_thread_U.o cher2_thread_L.o cher2_thread_V.o cher2_thread_M.o cspr_thread_U.o cspr_thread_L.o chpr_thread_U.o chpr_thread_L.o chpr_thread_V.o chpr_thread_M.o cspr2_thread_U.o cspr2_thread_L.o chpr2_thread_U.o chpr2_thread_L.o chpr2_thread_V.o chpr2_thread_M.o ctrmv_thread_NUU.o ctrmv_thread_NUN.o ctrmv_thread_NLU.o ctrmv_thread_NLN.o ctrmv_thread_TUU.o ctrmv_thread_TUN.o ctrmv_thread_TLU.o ctrmv_thread_TLN.o ctrmv_thread_RUU.o ctrmv_thread_RUN.o ctrmv_thread_RLU.o ctrmv_thread_RLN.o ctrmv_thread_CUU.o ctrmv_thread_CUN.o ctrmv_thread_CLU.o ctrmv_thread_CLN.o cspmv_thread_U.o cspmv_thread_L.o chpmv_thread_U.o chpmv_thread_L.o chpmv_thread_V.o chpmv_thread_M.o ctpmv_thread_NUU.o ctpmv_thread_NUN.o ctpmv_thread_NLU.o ctpmv_thread_NLN.o ctpmv_thread_TUU.o ctpmv_thread_TUN.o ctpmv_thread_TLU.o ctpmv_thread_TLN.o ctpmv_thread_RUU.o ctpmv_thread_RUN.o ctpmv_thread_RLU.o ctpmv_thread_RLN.o ctpmv_thread_CUU.o ctpmv_thread_CUN.o ctpmv_thread_CLU.o ctpmv_thread_CLN.o cgbmv_thread_n.o cgbmv_thread_t.o cgbmv_thread_r.o cgbmv_thread_c.o cgbmv_thread_o.o cgbmv_thread_u.o cgbmv_thread_s.o cgbmv_thread_d.o csbmv_thread_U.o csbmv_thread_L.o chbmv_thread_U.o chbmv_thread_L.o chbmv_thread_V.o chbmv_thread_M.o ctbmv_thread_NUU.o ctbmv_thread_NUN.o ctbmv_thread_NLU.o ctbmv_thread_NLN.o ctbmv_thread_TUU.o ctbmv_thread_TUN.o ctbmv_thread_TLU.o ctbmv_thread_TLN.o ctbmv_thread_RUU.o ctbmv_thread_RUN.o ctbmv_thread_RLU.o ctbmv_thread_RLN.o ctbmv_thread_CUU.o ctbmv_thread_CUN.o ctbmv_thread_CLU.o ctbmv_thread_CLN.o zgbmv_n.o zgbmv_t.o zgbmv_r.o zgbmv_c.o zgbmv_o.o zgbmv_u.o zgbmv_s.o zgbmv_d.o zhbmv_U.o zhbmv_L.o zhbmv_V.o zhbmv_M.o zher_U.o zher_L.o zher_V.o zher_M.o zher2_U.o zher2_L.o zher2_V.o zher2_M.o zhpmv_U.o zhpmv_L.o zhpmv_V.o zhpmv_M.o zhpr_U.o zhpr_L.o zhpr_V.o zhpr_M.o zhpr2_U.o zhpr2_L.o zhpr2_V.o zhpr2_M.o zsbmv_U.o zsbmv_L.o zspmv_U.o zspmv_L.o zspr_U.o zspr_L.o zspr2_U.o zspr2_L.o zsyr_U.o zsyr_L.o zsyr2_U.o zsyr2_L.o ztbmv_NUU.o ztbmv_NUN.o ztbmv_NLU.o ztbmv_NLN.o ztbmv_TUU.o ztbmv_TUN.o ztbmv_TLU.o ztbmv_TLN.o ztbmv_RUU.o ztbmv_RUN.o ztbmv_RLU.o ztbmv_RLN.o ztbmv_CUU.o ztbmv_CUN.o ztbmv_CLU.o ztbmv_CLN.o ztbsv_NUU.o ztbsv_NUN.o ztbsv_NLU.o ztbsv_NLN.o ztbsv_TUU.o ztbsv_TUN.o ztbsv_TLU.o ztbsv_TLN.o ztbsv_RUU.o ztbsv_RUN.o ztbsv_RLU.o ztbsv_RLN.o ztbsv_CUU.o ztbsv_CUN.o ztbsv_CLU.o ztbsv_CLN.o ztpmv_NUU.o ztpmv_NUN.o ztpmv_NLU.o ztpmv_NLN.o ztpmv_TUU.o ztpmv_TUN.o ztpmv_TLU.o ztpmv_TLN.o ztpmv_RUU.o ztpmv_RUN.o ztpmv_RLU.o ztpmv_RLN.o ztpmv_CUU.o ztpmv_CUN.o ztpmv_CLU.o ztpmv_CLN.o ztpsv_NUU.o ztpsv_NUN.o ztpsv_NLU.o ztpsv_NLN.o ztpsv_TUU.o ztpsv_TUN.o ztpsv_TLU.o ztpsv_TLN.o ztpsv_RUU.o ztpsv_RUN.o ztpsv_RLU.o ztpsv_RLN.o ztpsv_CUU.o ztpsv_CUN.o ztpsv_CLU.o ztpsv_CLN.o ztrmv_NUU.o ztrmv_NUN.o ztrmv_NLU.o ztrmv_NLN.o ztrmv_TUU.o ztrmv_TUN.o ztrmv_TLU.o ztrmv_TLN.o ztrmv_RUU.o ztrmv_RUN.o ztrmv_RLU.o ztrmv_RLN.o ztrmv_CUU.o ztrmv_CUN.o ztrmv_CLU.o ztrmv_CLN.o ztrsv_NUU.o ztrsv_NUN.o ztrsv_NLU.o ztrsv_NLN.o ztrsv_TUU.o ztrsv_TUN.o ztrsv_TLU.o ztrsv_TLN.o ztrsv_RUU.o ztrsv_RUN.o ztrsv_RLU.o ztrsv_RLN.o ztrsv_CUU.o ztrsv_CUN.o ztrsv_CLU.o ztrsv_CLN.o zgemv_thread_n.o zgemv_thread_t.o zgemv_thread_r.o zgemv_thread_c.o zgemv_thread_o.o zgemv_thread_u.o zgemv_thread_s.o zgemv_thread_d.o zger_thread_U.o zger_thread_C.o zger_thread_V.o zger_thread_D.o zsymv_thread_U.o zsymv_thread_L.o zhemv_thread_U.o zhemv_thread_L.o zhemv_thread_V.o zhemv_thread_M.o zsyr_thread_U.o zsyr_thread_L.o zher_thread_U.o zher_thread_L.o zher_thread_V.o zher_thread_M.o zsyr2_thread_U.o zsyr2_thread_L.o zher2_thread_U.o zher2_thread_L.o zher2_thread_V.o zher2_thread_M.o zspr_thread_U.o zspr_thread_L.o zhpr_thread_U.o zhpr_thread_L.o zhpr_thread_V.o zhpr_thread_M.o zspr2_thread_U.o zspr2_thread_L.o zhpr2_thread_U.o zhpr2_thread_L.o zhpr2_thread_V.o zhpr2_thread_M.o ztrmv_thread_NUU.o ztrmv_thread_NUN.o ztrmv_thread_NLU.o ztrmv_thread_NLN.o ztrmv_thread_TUU.o ztrmv_thread_TUN.o ztrmv_thread_TLU.o ztrmv_thread_TLN.o ztrmv_thread_RUU.o ztrmv_thread_RUN.o ztrmv_thread_RLU.o ztrmv_thread_RLN.o ztrmv_thread_CUU.o ztrmv_thread_CUN.o ztrmv_thread_CLU.o ztrmv_thread_CLN.o zspmv_thread_U.o zspmv_thread_L.o zhpmv_thread_U.o zhpmv_thread_L.o zhpmv_thread_V.o zhpmv_thread_M.o ztpmv_thread_NUU.o ztpmv_thread_NUN.o ztpmv_thread_NLU.o ztpmv_thread_NLN.o ztpmv_thread_TUU.o ztpmv_thread_TUN.o ztpmv_thread_TLU.o ztpmv_thread_TLN.o ztpmv_thread_RUU.o ztpmv_thread_RUN.o ztpmv_thread_RLU.o ztpmv_thread_RLN.o ztpmv_thread_CUU.o ztpmv_thread_CUN.o ztpmv_thread_CLU.o ztpmv_thread_CLN.o zgbmv_thread_n.o zgbmv_thread_t.o zgbmv_thread_r.o zgbmv_thread_c.o zgbmv_thread_o.o zgbmv_thread_u.o zgbmv_thread_s.o zgbmv_thread_d.o zsbmv_thread_U.o zsbmv_thread_L.o zhbmv_thread_U.o zhbmv_thread_L.o zhbmv_thread_V.o zhbmv_thread_M.o ztbmv_thread_NUU.o ztbmv_thread_NUN.o ztbmv_thread_NLU.o ztbmv_thread_NLN.o ztbmv_thread_TUU.o ztbmv_thread_TUN.o ztbmv_thread_TLU.o ztbmv_thread_TLN.o ztbmv_thread_RUU.o ztbmv_thread_RUN.o ztbmv_thread_RLU.o ztbmv_thread_RLN.o ztbmv_thread_CUU.o ztbmv_thread_CUN.o ztbmv_thread_CLU.o ztbmv_thread_CLN.o
make[1]: Leaving directory '/my/path/cETOOL/OpenBLAS-master/driver/level2'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/cETOOL/OpenBLAS-master/driver/level3'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../../libopenblas_haswellp-r0.2.20.a sgemm_nn.o sgemm_nt.o sgemm_tn.o sgemm_tt.o strmm_LNUU.o strmm_LNUN.o strmm_LNLU.o strmm_LNLN.o strmm_LTUU.o strmm_LTUN.o strmm_LTLU.o strmm_LTLN.o strmm_RNUU.o strmm_RNUN.o strmm_RNLU.o strmm_RNLN.o strmm_RTUU.o strmm_RTUN.o strmm_RTLU.o strmm_RTLN.o strsm_LNUU.o strsm_LNUN.o strsm_LNLU.o strsm_LNLN.o strsm_LTUU.o strsm_LTUN.o strsm_LTLU.o strsm_LTLN.o strsm_RNUU.o strsm_RNUN.o strsm_RNLU.o strsm_RNLN.o strsm_RTUU.o strsm_RTUN.o strsm_RTLU.o strsm_RTLN.o ssymm_LU.o ssymm_LL.o ssymm_RU.o ssymm_RL.o ssyrk_UN.o ssyrk_UT.o ssyrk_LN.o ssyrk_LT.o ssyr2k_UN.o ssyr2k_UT.o ssyr2k_LN.o ssyr2k_LT.o ssyrk_kernel_U.o ssyrk_kernel_L.o ssyr2k_kernel_U.o ssyr2k_kernel_L.o sgemm_thread_nn.o sgemm_thread_nt.o sgemm_thread_tn.o sgemm_thread_tt.o ssymm_thread_LU.o ssymm_thread_LL.o ssymm_thread_RU.o ssymm_thread_RL.o ssyrk_thread_UN.o ssyrk_thread_UT.o ssyrk_thread_LN.o ssyrk_thread_LT.o dgemm_nn.o dgemm_nt.o dgemm_tn.o dgemm_tt.o dtrmm_LNUU.o dtrmm_LNUN.o dtrmm_LNLU.o dtrmm_LNLN.o dtrmm_LTUU.o dtrmm_LTUN.o dtrmm_LTLU.o dtrmm_LTLN.o dtrmm_RNUU.o dtrmm_RNUN.o dtrmm_RNLU.o dtrmm_RNLN.o dtrmm_RTUU.o dtrmm_RTUN.o dtrmm_RTLU.o dtrmm_RTLN.o dtrsm_LNUU.o dtrsm_LNUN.o dtrsm_LNLU.o dtrsm_LNLN.o dtrsm_LTUU.o dtrsm_LTUN.o dtrsm_LTLU.o dtrsm_LTLN.o dtrsm_RNUU.o dtrsm_RNUN.o dtrsm_RNLU.o dtrsm_RNLN.o dtrsm_RTUU.o dtrsm_RTUN.o dtrsm_RTLU.o dtrsm_RTLN.o dsymm_LU.o dsymm_LL.o dsymm_RU.o dsymm_RL.o dsyrk_UN.o dsyrk_UT.o dsyrk_LN.o dsyrk_LT.o dsyr2k_UN.o dsyr2k_UT.o dsyr2k_LN.o dsyr2k_LT.o dsyrk_kernel_U.o dsyrk_kernel_L.o dsyr2k_kernel_U.o dsyr2k_kernel_L.o dgemm_thread_nn.o dgemm_thread_nt.o dgemm_thread_tn.o dgemm_thread_tt.o dsymm_thread_LU.o dsymm_thread_LL.o dsymm_thread_RU.o dsymm_thread_RL.o dsyrk_thread_UN.o dsyrk_thread_UT.o dsyrk_thread_LN.o dsyrk_thread_LT.o cgemm_nn.o cgemm_cn.o cgemm_tn.o cgemm_nc.o cgemm_nt.o cgemm_cc.o cgemm_ct.o cgemm_tc.o cgemm_tt.o cgemm_nr.o cgemm_tr.o cgemm_cr.o cgemm_rn.o cgemm_rt.o cgemm_rc.o cgemm_rr.o ctrmm_LNUU.o ctrmm_LNUN.o ctrmm_LNLU.o ctrmm_LNLN.o ctrmm_LTUU.o ctrmm_LTUN.o ctrmm_LTLU.o ctrmm_LTLN.o ctrmm_LRUU.o ctrmm_LRUN.o ctrmm_LRLU.o ctrmm_LRLN.o ctrmm_LCUU.o ctrmm_LCUN.o ctrmm_LCLU.o ctrmm_LCLN.o ctrmm_RNUU.o ctrmm_RNUN.o ctrmm_RNLU.o ctrmm_RNLN.o ctrmm_RTUU.o ctrmm_RTUN.o ctrmm_RTLU.o ctrmm_RTLN.o ctrmm_RRUU.o ctrmm_RRUN.o ctrmm_RRLU.o ctrmm_RRLN.o ctrmm_RCUU.o ctrmm_RCUN.o ctrmm_RCLU.o ctrmm_RCLN.o ctrsm_LNUU.o ctrsm_LNUN.o ctrsm_LNLU.o ctrsm_LNLN.o ctrsm_LTUU.o ctrsm_LTUN.o ctrsm_LTLU.o ctrsm_LTLN.o ctrsm_LRUU.o ctrsm_LRUN.o ctrsm_LRLU.o ctrsm_LRLN.o ctrsm_LCUU.o ctrsm_LCUN.o ctrsm_LCLU.o ctrsm_LCLN.o ctrsm_RNUU.o ctrsm_RNUN.o ctrsm_RNLU.o ctrsm_RNLN.o ctrsm_RTUU.o ctrsm_RTUN.o ctrsm_RTLU.o ctrsm_RTLN.o ctrsm_RRUU.o ctrsm_RRUN.o ctrsm_RRLU.o ctrsm_RRLN.o ctrsm_RCUU.o ctrsm_RCUN.o ctrsm_RCLU.o ctrsm_RCLN.o csymm_LU.o csymm_LL.o csymm_RU.o csymm_RL.o chemm_LU.o chemm_LL.o chemm_RU.o chemm_RL.o csyrk_UN.o csyrk_UT.o csyrk_LN.o csyrk_LT.o cherk_UN.o cherk_UC.o cherk_LN.o cherk_LC.o csyr2k_UN.o csyr2k_UT.o csyr2k_LN.o csyr2k_LT.o cher2k_UN.o cher2k_UC.o cher2k_LN.o cher2k_LC.o csyrk_kernel_U.o csyrk_kernel_L.o cherk_kernel_UN.o cherk_kernel_UC.o cherk_kernel_LN.o cherk_kernel_LC.o csyr2k_kernel_U.o csyr2k_kernel_L.o cher2k_kernel_UN.o cher2k_kernel_UC.o cher2k_kernel_LN.o cher2k_kernel_LC.o cgemm3m_nn.o cgemm3m_cn.o cgemm3m_tn.o cgemm3m_nc.o cgemm3m_nt.o cgemm3m_cc.o cgemm3m_ct.o cgemm3m_tc.o cgemm3m_tt.o cgemm3m_nr.o cgemm3m_tr.o cgemm3m_cr.o cgemm3m_rn.o cgemm3m_rt.o cgemm3m_rc.o cgemm3m_rr.o csymm3m_LU.o csymm3m_LL.o csymm3m_RU.o csymm3m_RL.o chemm3m_LU.o chemm3m_LL.o chemm3m_RU.o chemm3m_RL.o cgemm_thread_nn.o cgemm_thread_nt.o cgemm_thread_nr.o cgemm_thread_nc.o cgemm_thread_tn.o cgemm_thread_tt.o cgemm_thread_tr.o cgemm_thread_tc.o cgemm_thread_rn.o cgemm_thread_rt.o cgemm_thread_rr.o cgemm_thread_rc.o cgemm_thread_cn.o cgemm_thread_ct.o cgemm_thread_cr.o cgemm_thread_cc.o csymm_thread_LU.o csymm_thread_LL.o csymm_thread_RU.o csymm_thread_RL.o chemm_thread_LU.o chemm_thread_LL.o chemm_thread_RU.o chemm_thread_RL.o csyrk_thread_UN.o csyrk_thread_UT.o csyrk_thread_LN.o csyrk_thread_LT.o cherk_thread_UN.o cherk_thread_UC.o cherk_thread_LN.o cherk_thread_LC.o cgemm3m_thread_nn.o cgemm3m_thread_nt.o cgemm3m_thread_nr.o cgemm3m_thread_nc.o cgemm3m_thread_tn.o cgemm3m_thread_tt.o cgemm3m_thread_tr.o cgemm3m_thread_tc.o cgemm3m_thread_rn.o cgemm3m_thread_rt.o cgemm3m_thread_rr.o cgemm3m_thread_rc.o cgemm3m_thread_cn.o cgemm3m_thread_ct.o cgemm3m_thread_cr.o cgemm3m_thread_cc.o csymm3m_thread_LU.o csymm3m_thread_LL.o csymm3m_thread_RU.o csymm3m_thread_RL.o chemm3m_thread_LU.o chemm3m_thread_LL.o chemm3m_thread_RU.o chemm3m_thread_RL.o zgemm_nn.o zgemm_cn.o zgemm_tn.o zgemm_nc.o zgemm_nt.o zgemm_cc.o zgemm_ct.o zgemm_tc.o zgemm_tt.o zgemm_nr.o zgemm_tr.o zgemm_cr.o zgemm_rn.o zgemm_rt.o zgemm_rc.o zgemm_rr.o ztrmm_LNUU.o ztrmm_LNUN.o ztrmm_LNLU.o ztrmm_LNLN.o ztrmm_LTUU.o ztrmm_LTUN.o ztrmm_LTLU.o ztrmm_LTLN.o ztrmm_LRUU.o ztrmm_LRUN.o ztrmm_LRLU.o ztrmm_LRLN.o ztrmm_LCUU.o ztrmm_LCUN.o ztrmm_LCLU.o ztrmm_LCLN.o ztrmm_RNUU.o ztrmm_RNUN.o ztrmm_RNLU.o ztrmm_RNLN.o ztrmm_RTUU.o ztrmm_RTUN.o ztrmm_RTLU.o ztrmm_RTLN.o ztrmm_RRUU.o ztrmm_RRUN.o ztrmm_RRLU.o ztrmm_RRLN.o ztrmm_RCUU.o ztrmm_RCUN.o ztrmm_RCLU.o ztrmm_RCLN.o ztrsm_LNUU.o ztrsm_LNUN.o ztrsm_LNLU.o ztrsm_LNLN.o ztrsm_LTUU.o ztrsm_LTUN.o ztrsm_LTLU.o ztrsm_LTLN.o ztrsm_LRUU.o ztrsm_LRUN.o ztrsm_LRLU.o ztrsm_LRLN.o ztrsm_LCUU.o ztrsm_LCUN.o ztrsm_LCLU.o ztrsm_LCLN.o ztrsm_RNUU.o ztrsm_RNUN.o ztrsm_RNLU.o ztrsm_RNLN.o ztrsm_RTUU.o ztrsm_RTUN.o ztrsm_RTLU.o ztrsm_RTLN.o ztrsm_RRUU.o ztrsm_RRUN.o ztrsm_RRLU.o ztrsm_RRLN.o ztrsm_RCUU.o ztrsm_RCUN.o ztrsm_RCLU.o ztrsm_RCLN.o zsymm_LU.o zsymm_LL.o zsymm_RU.o zsymm_RL.o zhemm_LU.o zhemm_LL.o zhemm_RU.o zhemm_RL.o zsyrk_UN.o zsyrk_UT.o zsyrk_LN.o zsyrk_LT.o zherk_UN.o zherk_UC.o zherk_LN.o zherk_LC.o zsyr2k_UN.o zsyr2k_UT.o zsyr2k_LN.o zsyr2k_LT.o zher2k_UN.o zher2k_UC.o zher2k_LN.o zher2k_LC.o zsyrk_kernel_U.o zsyrk_kernel_L.o zherk_kernel_UN.o zherk_kernel_UC.o zherk_kernel_LN.o zherk_kernel_LC.o zsyr2k_kernel_U.o zsyr2k_kernel_L.o zher2k_kernel_UN.o zher2k_kernel_UC.o zher2k_kernel_LN.o zher2k_kernel_LC.o zgemm3m_nn.o zgemm3m_cn.o zgemm3m_tn.o zgemm3m_nc.o zgemm3m_nt.o zgemm3m_cc.o zgemm3m_ct.o zgemm3m_tc.o zgemm3m_tt.o zgemm3m_nr.o zgemm3m_tr.o zgemm3m_cr.o zgemm3m_rn.o zgemm3m_rt.o zgemm3m_rc.o zgemm3m_rr.o zsymm3m_LU.o zsymm3m_LL.o zsymm3m_RU.o zsymm3m_RL.o zhemm3m_LU.o zhemm3m_LL.o zhemm3m_RU.o zhemm3m_RL.o zgemm_thread_nn.o zgemm_thread_nt.o zgemm_thread_nr.o zgemm_thread_nc.o zgemm_thread_tn.o zgemm_thread_tt.o zgemm_thread_tr.o zgemm_thread_tc.o zgemm_thread_rn.o zgemm_thread_rt.o zgemm_thread_rr.o zgemm_thread_rc.o zgemm_thread_cn.o zgemm_thread_ct.o zgemm_thread_cr.o zgemm_thread_cc.o zsymm_thread_LU.o zsymm_thread_LL.o zsymm_thread_RU.o zsymm_thread_RL.o zhemm_thread_LU.o zhemm_thread_LL.o zhemm_thread_RU.o zhemm_thread_RL.o zsyrk_thread_UN.o zsyrk_thread_UT.o zsyrk_thread_LN.o zsyrk_thread_LT.o zherk_thread_UN.o zherk_thread_UC.o zherk_thread_LN.o zherk_thread_LC.o zgemm3m_thread_nn.o zgemm3m_thread_nt.o zgemm3m_thread_nr.o zgemm3m_thread_nc.o zgemm3m_thread_tn.o zgemm3m_thread_tt.o zgemm3m_thread_tr.o zgemm3m_thread_tc.o zgemm3m_thread_rn.o zgemm3m_thread_rt.o zgemm3m_thread_rr.o zgemm3m_thread_rc.o zgemm3m_thread_cn.o zgemm3m_thread_ct.o zgemm3m_thread_cr.o zgemm3m_thread_cc.o zsymm3m_thread_LU.o zsymm3m_thread_LL.o zsymm3m_thread_RU.o zsymm3m_thread_RL.o zhemm3m_thread_LU.o zhemm3m_thread_LL.o zhemm3m_thread_RU.o zhemm3m_thread_RL.o gemm_thread_m.o gemm_thread_n.o gemm_thread_mn.o gemm_thread_variable.o syrk_thread.o
make[1]: Leaving directory '/my/path/cETOOL/OpenBLAS-master/driver/level3'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/cETOOL/OpenBLAS-master/driver/others'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../../libopenblas_haswellp-r0.2.20.a memory.o xerbla.o c_abs.o z_abs.o openblas_set_num_threads.o openblas_get_num_threads.o openblas_get_num_procs.o openblas_get_config.o openblas_get_parallel.o openblas_error_handle.o openblas_env.o blas_server.o divtable.o blasL1thread.o init.o parameter.o
make[1]: Leaving directory '/my/path/cETOOL/OpenBLAS-master/driver/others'
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/cETOOL/OpenBLAS-master/kernel'
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar  -ru ../libopenblas_haswellp-r0.2.20.a samax_k.o samin_k.o smax_k.o smin_k.o isamax_k.o isamin_k.o ismax_k.o ismin_k.o sasum_k.o saxpy_k.o scopy_k.o sdot_k.o sdsdot_k.o dsdot_k.o snrm2_k.o srot_k.o sscal_k.o sswap_k.o saxpby_k.o sgemv_n.o sgemv_t.o ssymv_U.o ssymv_L.o sger_k.o sgemm_kernel.o sgemm_incopy.o sgemm_itcopy.o sgemm_oncopy.o sgemm_otcopy.o sgemm_beta.o strmm_kernel_LN.o strmm_kernel_LT.o strmm_kernel_RN.o strmm_kernel_RT.o strsm_kernel_LN.o strsm_kernel_LT.o strsm_kernel_RN.o strsm_kernel_RT.o strmm_iunucopy.o strmm_iunncopy.o strmm_ilnucopy.o strmm_ilnncopy.o strmm_iutucopy.o strmm_iutncopy.o strmm_iltucopy.o strmm_iltncopy.o strmm_ounucopy.o strmm_ounncopy.o strmm_olnucopy.o strmm_olnncopy.o strmm_outucopy.o strmm_outncopy.o strmm_oltucopy.o strmm_oltncopy.o strsm_iunucopy.o strsm_iunncopy.o strsm_ilnucopy.o strsm_ilnncopy.o strsm_iutucopy.o strsm_iutncopy.o strsm_iltucopy.o strsm_iltncopy.o strsm_ounucopy.o strsm_ounncopy.o strsm_olnucopy.o strsm_olnncopy.o strsm_outucopy.o strsm_outncopy.o strsm_oltucopy.o strsm_oltncopy.o ssymm_iutcopy.o ssymm_iltcopy.o ssymm_outcopy.o ssymm_oltcopy.o somatcopy_k_cn.o somatcopy_k_rn.o somatcopy_k_ct.o somatcopy_k_rt.o simatcopy_k_cn.o simatcopy_k_rn.o simatcopy_k_ct.o simatcopy_k_rt.o sgeadd_k.o damax_k.o damin_k.o dmax_k.o dmin_k.o idamax_k.o idamin_k.o idmax_k.o idmin_k.o dasum_k.o daxpy_k.o dcopy_k.o ddot_k.o dnrm2_k.o drot_k.o dscal_k.o dswap_k.o daxpby_k.o dgemv_n.o dgemv_t.o dsymv_U.o dsymv_L.o dger_k.o dgemm_kernel.o dgemm_incopy.o dgemm_itcopy.o dgemm_oncopy.o dgemm_otcopy.o dgemm_beta.o dtrmm_kernel_LN.o dtrmm_kernel_LT.o dtrmm_kernel_RN.o dtrmm_kernel_RT.o dtrsm_kernel_LN.o dtrsm_kernel_LT.o dtrsm_kernel_RN.o dtrsm_kernel_RT.o dtrmm_iunucopy.o dtrmm_iunncopy.o dtrmm_ilnucopy.o dtrmm_ilnncopy.o dtrmm_iutucopy.o dtrmm_iutncopy.o dtrmm_iltucopy.o dtrmm_iltncopy.o dtrmm_ounucopy.o dtrmm_ounncopy.o dtrmm_olnucopy.o dtrmm_olnncopy.o dtrmm_outucopy.o dtrmm_outncopy.o dtrmm_oltucopy.o dtrmm_oltncopy.o dtrsm_iunucopy.o dtrsm_iunncopy.o dtrsm_ilnucopy.o dtrsm_ilnncopy.o dtrsm_iutucopy.o dtrsm_iutncopy.o dtrsm_iltucopy.o dtrsm_iltncopy.o dtrsm_ounucopy.o dtrsm_ounncopy.o dtrsm_olnucopy.o dtrsm_olnncopy.o dtrsm_outucopy.o dtrsm_outncopy.o dtrsm_oltucopy.o dtrsm_oltncopy.o dsymm_iutcopy.o dsymm_iltcopy.o dsymm_outcopy.o dsymm_oltcopy.o domatcopy_k_cn.o domatcopy_k_rn.o domatcopy_k_ct.o domatcopy_k_rt.o dimatcopy_k_cn.o dimatcopy_k_rn.o dimatcopy_k_ct.o dimatcopy_k_rt.o dgeadd_k.o camax_k.o camin_k.o icamax_k.o icamin_k.o casum_k.o caxpy_k.o caxpyc_k.o ccopy_k.o cdotc_k.o cdotu_k.o cnrm2_k.o csrot_k.o cscal_k.o cswap_k.o caxpby_k.o cgemv_n.o cgemv_t.o cgemv_r.o cgemv_c.o cgemv_o.o cgemv_u.o cgemv_s.o cgemv_d.o csymv_U.o csymv_L.o chemv_U.o chemv_L.o chemv_V.o chemv_M.o cgeru_k.o cgerc_k.o cgerv_k.o cgerd_k.o cgemm_kernel_n.o cgemm_kernel_r.o cgemm_kernel_l.o cgemm_kernel_b.o cgemm_incopy.o cgemm_itcopy.o cgemm_oncopy.o cgemm_otcopy.o cgemm_beta.o ctrmm_kernel_LN.o ctrmm_kernel_LT.o ctrmm_kernel_LR.o ctrmm_kernel_LC.o ctrmm_kernel_RN.o ctrmm_kernel_RT.o ctrmm_kernel_RR.o ctrmm_kernel_RC.o ctrsm_kernel_LN.o ctrsm_kernel_LT.o ctrsm_kernel_LR.o ctrsm_kernel_LC.o ctrsm_kernel_RN.o ctrsm_kernel_RT.o ctrsm_kernel_RR.o ctrsm_kernel_RC.o cgemm3m_kernel.o ctrmm_iunucopy.o ctrmm_iunncopy.o ctrmm_ilnucopy.o ctrmm_ilnncopy.o ctrmm_iutucopy.o ctrmm_iutncopy.o ctrmm_iltucopy.o ctrmm_iltncopy.o ctrmm_ounucopy.o ctrmm_ounncopy.o ctrmm_olnucopy.o ctrmm_olnncopy.o ctrmm_outucopy.o ctrmm_outncopy.o ctrmm_oltucopy.o ctrmm_oltncopy.o ctrsm_iunucopy.o ctrsm_iunncopy.o ctrsm_ilnucopy.o ctrsm_ilnncopy.o ctrsm_iutucopy.o ctrsm_iutncopy.o ctrsm_iltucopy.o ctrsm_iltncopy.o ctrsm_ounucopy.o ctrsm_ounncopy.o ctrsm_olnucopy.o ctrsm_olnncopy.o ctrsm_outucopy.o ctrsm_outncopy.o ctrsm_oltucopy.o ctrsm_oltncopy.o csymm_iutcopy.o csymm_iltcopy.o csymm_outcopy.o csymm_oltcopy.o chemm_iutcopy.o chemm_iltcopy.o chemm_outcopy.o chemm_oltcopy.o cgemm3m_incopyb.o cgemm3m_itcopyb.o cgemm3m_incopyr.o cgemm3m_itcopyr.o cgemm3m_incopyi.o cgemm3m_itcopyi.o cgemm3m_oncopyb.o cgemm3m_otcopyb.o cgemm3m_oncopyr.o cgemm3m_otcopyr.o cgemm3m_oncopyi.o cgemm3m_otcopyi.o csymm3m_iucopyb.o csymm3m_oucopyb.o csymm3m_iucopyr.o csymm3m_oucopyr.o csymm3m_iucopyi.o csymm3m_oucopyi.o csymm3m_ilcopyb.o csymm3m_olcopyb.o csymm3m_ilcopyr.o csymm3m_olcopyr.o csymm3m_ilcopyi.o csymm3m_olcopyi.o chemm3m_iucopyb.o chemm3m_oucopyb.o chemm3m_iucopyr.o chemm3m_oucopyr.o chemm3m_iucopyi.o chemm3m_oucopyi.o chemm3m_ilcopyb.o chemm3m_olcopyb.o chemm3m_ilcopyr.o chemm3m_olcopyr.o chemm3m_ilcopyi.o chemm3m_olcopyi.o comatcopy_k_cn.o comatcopy_k_rn.o comatcopy_k_ct.o comatcopy_k_rt.o comatcopy_k_cnc.o comatcopy_k_rnc.o comatcopy_k_ctc.o comatcopy_k_rtc.o cimatcopy_k_cn.o cimatcopy_k_rn.o cimatcopy_k_ct.o cimatcopy_k_rt.o cimatcopy_k_cnc.o cimatcopy_k_rnc.o cimatcopy_k_ctc.o cimatcopy_k_rtc.o cgeadd_k.o zamax_k.o zamin_k.o izamax_k.o izamin_k.o zasum_k.o zaxpy_k.o zaxpyc_k.o zcopy_k.o zdotc_k.o zdotu_k.o znrm2_k.o zdrot_k.o zscal_k.o zswap_k.o zaxpby_k.o zgemv_n.o zgemv_t.o zgemv_r.o zgemv_c.o zgemv_o.o zgemv_u.o zgemv_s.o zgemv_d.o zsymv_U.o zsymv_L.o zhemv_U.o zhemv_L.o zhemv_V.o zhemv_M.o zgeru_k.o zgerc_k.o zgerv_k.o zgerd_k.o zgemm_kernel_n.o zgemm_kernel_r.o zgemm_kernel_l.o zgemm_kernel_b.o zgemm_incopy.o zgemm_itcopy.o zgemm_oncopy.o zgemm_otcopy.o zgemm_beta.o ztrmm_kernel_LN.o ztrmm_kernel_LT.o ztrmm_kernel_LR.o ztrmm_kernel_LC.o ztrmm_kernel_RN.o ztrmm_kernel_RT.o ztrmm_kernel_RR.o ztrmm_kernel_RC.o ztrsm_kernel_LN.o ztrsm_kernel_LT.o ztrsm_kernel_LR.o ztrsm_kernel_LC.o ztrsm_kernel_RN.o ztrsm_kernel_RT.o ztrsm_kernel_RR.o ztrsm_kernel_RC.o zgemm3m_kernel.o ztrmm_iunucopy.o ztrmm_iunncopy.o ztrmm_ilnucopy.o ztrmm_ilnncopy.o ztrmm_iutucopy.o ztrmm_iutncopy.o ztrmm_iltucopy.o ztrmm_iltncopy.o ztrmm_ounucopy.o ztrmm_ounncopy.o ztrmm_olnucopy.o ztrmm_olnncopy.o ztrmm_outucopy.o ztrmm_outncopy.o ztrmm_oltucopy.o ztrmm_oltncopy.o ztrsm_iunucopy.o ztrsm_iunncopy.o ztrsm_ilnucopy.o ztrsm_ilnncopy.o ztrsm_iutucopy.o ztrsm_iutncopy.o ztrsm_iltucopy.o ztrsm_iltncopy.o ztrsm_ounucopy.o ztrsm_ounncopy.o ztrsm_olnucopy.o ztrsm_olnncopy.o ztrsm_outucopy.o ztrsm_outncopy.o ztrsm_oltucopy.o ztrsm_oltncopy.o zsymm_iutcopy.o zsymm_iltcopy.o zsymm_outcopy.o zsymm_oltcopy.o zhemm_iutcopy.o zhemm_iltcopy.o zhemm_outcopy.o zhemm_oltcopy.o zgemm3m_incopyb.o zgemm3m_itcopyb.o zgemm3m_incopyr.o zgemm3m_itcopyr.o zgemm3m_incopyi.o zgemm3m_itcopyi.o zgemm3m_oncopyb.o zgemm3m_otcopyb.o zgemm3m_oncopyr.o zgemm3m_otcopyr.o zgemm3m_oncopyi.o zgemm3m_otcopyi.o zsymm3m_iucopyb.o zsymm3m_oucopyb.o zsymm3m_iucopyr.o zsymm3m_oucopyr.o zsymm3m_iucopyi.o zsymm3m_oucopyi.o zsymm3m_ilcopyb.o zsymm3m_olcopyb.o zsymm3m_ilcopyr.o zsymm3m_olcopyr.o zsymm3m_ilcopyi.o zsymm3m_olcopyi.o zhemm3m_iucopyb.o zhemm3m_oucopyb.o zhemm3m_iucopyr.o zhemm3m_oucopyr.o zhemm3m_iucopyi.o zhemm3m_oucopyi.o zhemm3m_ilcopyb.o zhemm3m_olcopyb.o zhemm3m_ilcopyr.o zhemm3m_olcopyr.o zhemm3m_ilcopyi.o zhemm3m_olcopyi.o zomatcopy_k_cn.o zomatcopy_k_rn.o zomatcopy_k_ct.o zomatcopy_k_rt.o zomatcopy_k_cnc.o zomatcopy_k_rnc.o zomatcopy_k_ctc.o zomatcopy_k_rtc.o zimatcopy_k_cn.o zimatcopy_k_rn.o zimatcopy_k_ct.o zimatcopy_k_rt.o zimatcopy_k_cnc.o zimatcopy_k_rnc.o zimatcopy_k_ctc.o zimatcopy_k_rtc.o zgeadd_k.o lsame.o scabs1.o dcabs1.o
make[1]: Leaving directory '/my/path/cETOOL/OpenBLAS-master/kernel'
touch libopenblas_haswellp-r0.2.20.a
make -j 8 -C test all
make[1]: 警告: 子 make 中强制 -jN: 关闭 jobserver 模式。
make[1]: Entering directory '/my/path/cETOOL/OpenBLAS-master/test'
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o sblat1 sblat1.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o dblat1 dblat1.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o cblat1 cblat1.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o zblat1 zblat1.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o sblat2 sblat2.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o dblat2 dblat2.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o cblat2 cblat2.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
gfortran -O2 -Wall -m64  -L/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm -o zblat2 zblat2.o ../libopenblas_haswellp-r0.2.20.a -lm -lpthread -lm -lpthread 
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/aarch64-linux-android/bin/ld: unrecognised emulation mode: elf_x86_64
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/aarch64-linux-android/bin/ld: unrecognised emulation mode: elf_x86_64
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/aarch64-linux-android/bin/ld: unrecognised emulation mode: elf_x86_64
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi/
my/path/Android/ndk/android-ndk-r16bMakefile:129: recipe for target 'sblat1' failed
/toolchains/aarch64-linux-make[1]: *** [sblat1] Error 1
android-4.9/prebuilt/linux-x86_64/aarch64collect2: error: ld returned 1 exit status
-/linux-homeandroid//make[1]: *** 正在等待未完成的任务....
cefengxubin//Androidld/:Makefile:138: recipe for target 'cblat1' failed
ndk /unrecognisedmake[1]: *** [cblat1] Error 1
android -emulationndk -moder16b:/ toolchainself_x86_64/
aarch64Supported- linuxemulations-:android-4.9 /aarch64linux aarch64elfprebuilt aarch64elf32/ linuxaarch64elf32b aarch64elfb armelf -armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
x86_64/aarch64-linux-android/bin/ld: collect2: error: ld returned 1 exit status
unrecognised emulation mode: elf_x86_64
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
collect2: error: ld returned 1 exit status
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/aarch64-linux-android/bin/ld: unrecognised emulation mode: elf_x86_64
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
collect2: error: ld returned 1 exit status
Makefile:132: recipe for target 'dblat1' failed
make[1]: *** [dblat1] Error 1
Makefile:141: recipe for target 'zblat1' failed
make[1]: *** [zblat1] Error 1
Makefile:144: recipe for target 'sblat2' failed
make[1]: *** [sblat2] Error 1
/home/Makefile:147: recipe for target 'dblat2' failed
cefengxu/make[1]: *** [dblat2] Error 1
Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/aarch64-linux-android/bin/ld: unrecognised emulation mode: elf_x86_64
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
collect2: error: ld returned 1 exit status
/my/path/Android/ndk/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/aarch64-linux-android/bin/ld: unrecognised emulation mode: elf_x86_64
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
Makefile:150: recipe for target 'cblat2' failed
make[1]: *** [cblat2] Error 1
collect2: error: ld returned 1 exit status
Makefile:153: recipe for target 'zblat2' failed
make[1]: *** [zblat2] Error 1
make[1]: Leaving directory '/my/path/cETOOL/OpenBLAS-master/test'
Makefile:116: recipe for target 'tests' failed
make: *** [tests] Error 2

Another question: what is correct launch command order ?

// be used currently STEP1: cd OpenBLAS-master STEP2: make STEP3: sudo make install STEP4: run commands of 'Build ARMV8 with clang'

or

STEP1: cd OpenBLAS-master STEP2: run commands of 'Build ARMV8 with clang'

martin-frbg commented 6 years ago

I think you need to try with AS=${AS} ? Your current procedure is correct only if you also want to build and install OpenBLAS for your Ubuntu system, otherwise STEP2 and STEP3 are not necessary. And you absolutely need to do make clean before STEP4 to remove all the x86_64 object files so that they do not end up in the armv8 library. Perhaps this is the actual cause of the problem, and declaring AS and LD is not necessary.

cefengxu commented 6 years ago

@martin-frbg OK, i follow the second launch command order:

STEP1: cd OpenBLAS-master STEP2: run commands of 'Build ARMV8 with clang'

but output the new error issue:

as: 未知的选项 `--64'
as: 未知的选项 `--64'
make: *** [getarch] Error 1
Makefile.system:171: Makefile.conf: 没有那个文件或目录
Makefile.system:958: Makefile.: 没有那个文件或目录
make: *** No rule to make target 'Makefile.'。 停止。

the command used as follown :

export NDK_BUNDLE_DIR=/my/path/Android/ndk/android-ndk-r16b

export PATH=${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:${NDK_BUNDLE_DIR}/toolchains/llvm/prebuilt/linux-x86_64/bin:${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/aarch64-linux-android/bin:$PATH

export LDFLAGS="-L${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x -lm"

export CLANG_FLAGS="-target aarch64-none-linux-android --sysroot ${NDK_BUNDLE_DIR}/platforms/android-23/arch-arm64 -gcc-toolchain ${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64"

export AS="${NDK_BUNDLE_DIR}/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-as"

make TARGET=ARMV8 ONLY_CBLAS=1 AS=${AS} AR=ar CC="clang ${CLANG_FLAGS}" HOSTCC=gcc -j4

# no 'as config.' also used but the error  output as well
# make TARGET=ARMV8 ONLY_CBLAS=1 AR=ar CC="clang ${CLANG_FLAGS}" HOSTCC=gcc -j4

Could you help me to check is it correct ?! OpenBLAS was astonished me and we can't wait to using it ~

martin-frbg commented 6 years ago

Hmm. Error message from as seems to be "unknown option", and as it cannot build getarch we do not get Makefile.conf and other required information for the build. Please try once more without the "export AS", apparently that was not a good idea.

brada4 commented 6 years ago

It uses host fortran compiler too set FC= NONE

cefengxu commented 6 years ago

@martin-frbg and @brada4 Building has been done. Actually, just reboot system and do it again. It suppose to be caused by no use " make clean " when finish last " make "

BTW, android-ndk-r16b is no suitable for building android lib due to missing of some c header file

Thanks for your help and Wait for next issue ~

martin-frbg commented 6 years ago

Good to know it works for you now. You may want to update to the latest release (0.3.0) which has not yet been mentioned on the openblas.net homepage, 0.2.20 is a year old . 0.3.1 should be out in a matter of weeks, it will have a major rewrite of the thread setup code.