projectNe10 / Ne10

An open optimized software library project for the ARM® Architecture
Other
1.46k stars 409 forks source link

Cannot build IOS NE10Demo project #171

Closed JunFang-NWPU closed 7 years ago

JunFang-NWPU commented 7 years ago

I build NE10 in my imac (MacOS Sierra, version 10.12.1) according to the building.md document.

  cd $NE10_PATH
  mkdir build && cd build
  export IOS_DEVELOPER_PATH=/Applications/Xcode.app/Contents/Developer
  export NE10_IOS_TARGET_ARCH=aarch64                               
  cmake -DCMAKE_TOOLCHAIN_FILE=../ios/ios_config.cmake .. -DMIN_IOS_VER=8.0 (according to issue #142 )
  make

  make install

It all passed.

Then I open the NE10Demo project from Xcode(Version 8.3.3), my connected phone is iphone 6s Plus (IOS 10.3.2).

I set "Deployment Target" to 10.3, "Building Active Architecture Only" to Yes, "Valid Architectures" to "arm64".

However, Xcode reports Linker Error "clang: error: linker command failed with exit code 1 (use -v to see invocation)"

I googled and set "Enable Bitcode" to "NO". Then many errors are reported as follows:

Apple Mach-O Linker (ld) Error Group "ne10_mulcmatvec_cm4x4f_v4f_neon", referenced from:

"_ne10_transmat_3x3f_c", referenced from:

"ne10_transmat_3x3f_neon", referenced from:

"_ne10_transmat_4x4f_c", referenced from:

"_ne10_submat_2x2f_c", referenced from:

"_ne10_mulcmatvec_cm4x4f_v4f_c", referenced from:

"_ne10_submat_3x3f_c", referenced from:

"_ne10_mulmat_2x2f_c", referenced from:

"ne10_mulmat_2x2f_neon", referenced from:

"ne10_mulmat_3x3f_neon", referenced from:

"_ne10_mulmat_4x4f_c", referenced from:

"_ne10_invmat_2x2f_c", referenced from:

"ne10_invmat_2x2f_neon", referenced from:

"ne10_invmat_3x3f_neon", referenced from:

"_ne10_identitymat_2x2f_c", referenced from:

"ne10_mulmat_4x4f_neon", referenced from:

"_ne10_identitymat_4x4f_c", referenced from:

"ne10_identitymat_4x4f_neon", referenced from:

"ne10_detmat_2x2f_neon", referenced from:

"_ne10_detmat_3x3f_c", referenced from:

"_ne10_detmat_4x4f_c", referenced from:

"_ne10_addmat_2x2f_c", referenced from:

"ne10_detmat_3x3f_neon", referenced from:

"_ne10_addmat_2x2f_neon", referenced from:

"_ne10_addmat_3x3f_c", referenced from:

"ne10_detmat_4x4f_neon", referenced from:

"_ne10_addmat_3x3f_neon", referenced from:

"_ne10_addmat_4x4f_neon", referenced from:

"ne10_sub_float_neon", referenced from:

"ne10_sub_vec2f_neon", referenced from:

"ne10_sub_vec3f_neon", referenced from:

"_ne10_subc_float_c", referenced from:

"_ne10_subc_float_neon", referenced from:

"_ne10_subc_vec2f_c", referenced from:

"_ne10_subc_vec3f_c", referenced from:

"_ne10_subc_vec3f_neon", referenced from:

"_ne10_subc_vec2f_neon", referenced from:

"_ne10_subc_vec4f_c", referenced from:

"_ne10_subc_vec4f_neon", referenced from:

"ne10_mulcmatvec_cm2x2f_v2f_neon", referenced from:

"_ne10_setc_float_c", referenced from:

"_ne10_setc_float_neon", referenced from:

"_ne10_setc_vec2f_c", referenced from:

"_ne10_setc_vec3f_c", referenced from:

"_ne10_setc_vec4f_c", referenced from:

"_ne10_submat_4x4f_c", referenced from:

"_ne10_rsbc_float_c", referenced from:

"_ne10_submat_4x4f_neon", referenced from:

"_ne10_rsbc_float_neon", referenced from:

"_ne10_sub_vec4f_c", referenced from:

"_ne10_normalize_vec4f_c", referenced from:

"_ne10_rsbc_vec3f_c", referenced from:

"_ne10_rsbc_vec4f_neon", referenced from:

"_ne10_sub_vec2f_c", referenced from:

"_ne10_normalize_vec2f_c", referenced from:

"ne10_normalize_vec2f_neon", referenced from:

"_ne10_mla_float_c", referenced from:

"ne10_normalize_vec3f_neon", referenced from:

"ne10_normalize_vec4f_neon", referenced from:

"_ne10_mulcmatvec_cm2x2f_v2f_c", referenced from:

"_ne10_vmul_vec2f_c", referenced from:

"_ne10_invmat_4x4f_c", referenced from:

"_ne10_sub_float_c", referenced from:

"ne10_vmul_vec3f_neon", referenced from:

"_ne10_invmat_3x3f_c", referenced from:

"_ne10_rsbc_vec3f_neon", referenced from:

"_ne10_sub_vec3f_c", referenced from:

"_ne10_rsbc_vec2f_c", referenced from:

"_ne10_mlac_vec3f_neon", referenced from:

"_ne10_normalize_vec3f_c", referenced from:

"_ne10_identitymat_3x3f_c", referenced from:

"_ne10_mulc_float_c", referenced from:

"ne10_vmul_vec4f_neon", referenced from:

"_ne10_mulc_vec2f_c", referenced from:

"_ne10_divc_vec3f_c", referenced from:

"_ne10_mulc_vec2f_neon", referenced from:

"_ne10_dot_vec4f_c", referenced from:

"_ne10_add_vec2f_c", referenced from:

"_ne10_mulc_vec3f_neon", referenced from:

"_ne10_detmat_2x2f_c", referenced from:

"_ne10_mulc_vec4f_c", referenced from:

"_ne10_dot_vec3f_c", referenced from:

"_ne10_mlac_float_neon", referenced from:

"ne10_mla_float_neon", referenced from:

"ne10_abs_vec4f_neon", referenced from:

"_ne10_vmla_vec2f_c", referenced from:

"_ne10_addc_vec4f_c", referenced from:

"ne10_vmla_vec3f_neon", referenced from:

"_ne10_mulc_float_neon", referenced from:

"_ne10_transmat_2x2f_c", referenced from:

"_ne10_vmla_vec4f_c", referenced from:

"ne10_vmla_vec4f_neon", referenced from:

"_ne10_mlac_float_c", referenced from:

"ne10_cross_vec3f_neon", referenced from:

"_ne10_mlac_vec2f_c", referenced from:

"_ne10_mulmat_3x3f_c", referenced from:

"_ne10_vmla_vec3f_c", referenced from:

"_ne10_abs_vec3f_c", referenced from:

"_ne10_mlac_vec2f_neon", referenced from:

"_ne10_mlac_vec4f_c", referenced from:

"_ne10_len_vec3f_c", referenced from:

"_ne10_len_vec4f_c", referenced from:

"ne10_len_vec4f_neon", referenced from:

"_ne10_dot_vec2f_c", referenced from:

"_ne10_abs_float_c", referenced from:

"ne10_vmul_vec2f_neon", referenced from:

"ne10_sub_vec4f_neon", referenced from:

"_ne10_div_float_c", referenced from:

"_ne10_vdiv_vec3f_c", referenced from:

"ne10_abs_vec2f_neon", referenced from:

"ne10_vdiv_vec3f_neon", referenced from:

"_ne10_divc_vec3f_neon", referenced from:

"ne10_add_float_neon", referenced from:

"ne10_add_vec3f_neon", referenced from:

"ne10_addc_float_neon", referenced from:

"_ne10_vdiv_vec4f_c", referenced from:

"ne10_abs_vec3f_neon", referenced from:

"ne10_vdiv_vec4f_neon", referenced from:

"_ne10_divc_vec2f_neon", referenced from:

"_ne10_mlac_vec3f_c", referenced from:

"ne10_invmat_4x4f_neon", referenced from:

"_ne10_divc_vec4f_c", referenced from:

"_ne10_divc_float_neon", referenced from:

"_ne10_cross_vec3f_c", referenced from:

"_ne10_mulc_vec3f_c", referenced from:

"ne10_identitymat_2x2f_neon", referenced from:

"_ne10_setc_vec2f_neon", referenced from:

"_ne10_add_float_c", referenced from:

"_ne10_divc_vec2f_c", referenced from:

"ne10_add_vec4f_neon", referenced from:

"_ne10_submat_2x2f_neon", referenced from:

"ne10_addc_vec2f_neon", referenced from:

"_ne10_mlac_vec4f_neon", referenced from:

"_ne10_vdiv_vec2f_c", referenced from:

"ne10_vdiv_vec2f_neon", referenced from:

"_ne10_vmul_vec4f_c", referenced from:

"ne10_transmat_4x4f_neon", referenced from:

"ne10_len_vec3f_neon", referenced from:

"_ne10_add_vec3f_c", referenced from:

"ne10_addc_vec4f_neon", referenced from:

"_ne10_add_vec4f_c", referenced from:

"_ne10_addc_vec3f_c", referenced from:

"_ne10_mul_float_c", referenced from:

"_ne10_vmul_vec3f_c", referenced from:

"ne10_vmla_vec2f_neon", referenced from:

"ne10_mul_float_neon", referenced from:

"_ne10_submat_3x3f_neon", referenced from:

"_ne10_divc_float_c", referenced from:

"_ne10_len_vec2f_c", referenced from:

"ne10_abs_float_neon", referenced from:

"ne10_dot_vec4f_neon", referenced from:

"ne10_add_vec2f_neon", referenced from:

"_ne10_mulc_vec4f_neon", referenced from:

"ne10_mulcmatvec_cm3x3f_v3f_neon", referenced from:

"ne10_div_float_neon", referenced from:

"ne10_identitymat_3x3f_neon", referenced from:

"ne10_addc_vec3f_neon", referenced from:

"_ne10_addmat_4x4f_c", referenced from:

"_ne10_addc_float_c", referenced from:

"_ne10_abs_vec2f_c", referenced from:

"_ne10_mulcmatvec_cm3x3f_v3f_c", referenced from:

"_ne10_addc_vec2f_c", referenced from:

"ne10_transmat_2x2f_neon", referenced from:

"_ne10_setc_vec4f_neon", referenced from:

"ne10_dot_vec3f_neon", referenced from:

"_ne10_abs_vec4f_c", referenced from:

"_ne10_setc_vec3f_neon", referenced from:

"ne10_dot_vec2f_neon", referenced from:

"_ne10_rsbc_vec4f_c", referenced from:

"ne10_len_vec2f_neon", referenced from:

"_ne10_divc_vec4f_neon", referenced from:

"_ne10_rsbc_vec2f_neon", referenced from:

clang: error: linker command failed with exit code 1 (use -v to see invocation)

How to solve it? Thanks.

joesavage commented 7 years ago

Is there any additional information displayed nearby "linker command failed with exit code 1"? My suspicion is that this has to do with issue #150, but it would be good to confirm this via a more detailed error message.

JunFang-NWPU commented 7 years ago

There is no additional information in the Xcode. However, when "make" in the Terminal, there are several warnings.

_Scanning dependencies of target NE10 [ 2%] Building C object modules/CMakeFiles/NE10.dir/__/common/NE10_mask_table.c.o [ 4%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft.c.o [ 7%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_float32.c.o [ 9%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_float32.c.o [ 11%] Building CXX object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_int32.cpp.o [ 14%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_rfft_float32.c.o [ 16%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int32.c.o [ 19%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int16.c.o [ 21%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fir.c.o [ 23%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fir_init.c.o [ 26%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_iir.c.o [ 28%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_iir_init.c.o [ 30%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_resize.c.o [ 33%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_rotate.c.o [ 35%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_boxfilter.c.o /Users/Jun/Downloads/Ne10-master/modules/imgproc/NE10_boxfilter.c:382:18: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat] sizeof (ne10_uint8_t) ^~~~~~~ 1 warning generated. [ 38%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_float32.neonintrinsic.c.o [ 40%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int32.neonintrinsic.c.o [ 42%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int16.neonintrinsic.c.o [ 45%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_rfft_float32.neonintrinsic.c.o [ 47%] Building CXX object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_float32.neonintrinsic.cpp.o [ 50%] Building CXX object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_int32.neonintrinsic.cpp.o [ 52%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_resize.neon.c.o [ 54%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_boxfilter.neon.c.o /Users/Jun/Downloads/Ne10-master/modules/imgproc/NE10_boxfilter.neon.c:281:18: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat] sizeof (ne10_uint32_t) ^~~~~~~~ 1 warning generated. [ 57%] Building C object modules/CMakeFiles/NE10.dir/NE10_init.c.o [ 59%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_init_dsp.c.o [ 61%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_init_imgproc.c.o [ 64%] Linking C static library libNE10.a [ 64%] Built target NE10 Scanning dependencies of target NE10_test_demo [ 66%] Building C object ios/CMakeFiles/NE10_test_demo.dir//modules/math/test/test_suite_math.c.o [ 69%] Building C object ios/CMakeFiles/NE10_test_demo.dir//test/src/seatest.c.o /Users/Jun/Downloads/Ne10-master/test/src/seatest.c:227:28: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] else if ((expected == (char *)0))


/Users/Jun/Downloads/Ne10-master/test/src/seatest.c:227:28: note: remove
      extraneous parentheses around the comparison to silence this warning
        else if ((expected == (char *)0))
                 ~         ^           ~
/Users/Jun/Downloads/Ne10-master/test/src/seatest.c:227:28: note: use '=' to
      turn this equality comparison into an assignment
        else if ((expected == (char *)0))
                           ^~
                           =
/Users/Jun/Downloads/Ne10-master/test/src/seatest.c:232:26: warning: equality
      comparison with extraneous parentheses [-Wparentheses-equality]
        else if ((actual == (char *)0))
                  ~~~~~~~^~~~~~~~~~~~
/Users/Jun/Downloads/Ne10-master/test/src/seatest.c:232:26: note: remove
      extraneous parentheses around the comparison to silence this warning
        else if ((actual == (char *)0))
                 ~       ^           ~
/Users/Jun/Downloads/Ne10-master/test/src/seatest.c:232:26: note: use '=' to
      turn this equality comparison into an assignment
        else if ((actual == (char *)0))
                         ^~
                         =
2 warnings generated.
[ 71%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/test/src/unit_test_common.c.o
/Users/Jun/Downloads/Ne10-master/test/src/unit_test_common.c:81:9: warning: 
      using integer absolute value function 'abs' when argument is of floating
      point type [-Wabsolute-value]
    if (abs(fa-fb) <= tolerance)
        ^
/Users/Jun/Downloads/Ne10-master/test/src/unit_test_common.c:81:9: note: use
      function 'fabsf' instead
    if (abs(fa-fb) <= tolerance)
        ^~~
        fabsf
1 warning generated.
[ 73%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/test/src/NE10_random.c.o
[ 76%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_main.c.o
[ 78%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fir.c.o
[ 80%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fir_decimate.c.o
[ 83%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fir_interpolate.c.o
[ 85%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fir_lattice.c.o
[ 88%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fir_sparse.c.o
[ 90%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_iir.c.o
[ 92%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fft_float32.c.o
[ 95%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fft_int16.c.o
[ 97%] Building C object ios/CMakeFiles/NE10_test_demo.dir/__/modules/dsp/test/test_suite_fft_int32.c.o
[100%] Linking CXX static library libNE10_test_demo.a
[100%] Built target NE10_test_demo_

Furthermore, if I "export NE10_IOS_TARGET_ARCH=armv7", then there are two errors in the "make".

_[  1%] Generating CMakeFiles/NE10.dir/NE10_physics_ios.neon.s
[  1%] Generating CMakeFiles/NE10.dir/NE10_abs_ios.neon.s
[  2%] Generating CMakeFiles/NE10.dir/NE10_add_ios.neon.s
[  3%] Generating CMakeFiles/NE10.dir/NE10_div_ios.neon.s
[  4%] Generating CMakeFiles/NE10.dir/NE10_len_ios.neon.s
[  5%] Generating CMakeFiles/NE10.dir/NE10_mla_ios.neon.s
[  5%] Generating CMakeFiles/NE10.dir/NE10_mul_ios.neon.s
[  6%] Generating CMakeFiles/NE10.dir/NE10_normalize_ios.neon.s
[  7%] Generating CMakeFiles/NE10.dir/NE10_sub_ios.neon.s
[  8%] Generating CMakeFiles/NE10.dir/NE10_dot_ios.neon.s
[  9%] Generating CMakeFiles/NE10.dir/NE10_cross_ios.neon.s
[ 10%] Generating CMakeFiles/NE10.dir/NE10_mulmat_ios.neon.s
[ 10%] Generating CMakeFiles/NE10.dir/NE10_mulcmatvec_ios.neon.s
[ 11%] Generating CMakeFiles/NE10.dir/NE10_detmat_ios.neon.s
[ 12%] Generating CMakeFiles/NE10.dir/NE10_invmat_ios.neon.s
[ 13%] Generating CMakeFiles/NE10.dir/NE10_transmat_ios.neon.s
[ 14%] Generating CMakeFiles/NE10.dir/NE10_identitymat_ios.neon.s
[ 14%] Generating CMakeFiles/NE10.dir/NE10_rotate_ios.neon.s
Scanning dependencies of target NE10
[ 15%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_abs.c.o
[ 16%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_addc.c.o
[ 17%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_add.c.o
[ 18%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_divc.c.o
[ 18%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_div.c.o
[ 19%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_len.c.o
[ 20%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mlac.c.o
[ 21%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mla.c.o
[ 22%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mulc.c.o
[ 22%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mul.c.o
[ 23%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_normalize.c.o
[ 24%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_rsbc.c.o
[ 25%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_setc.c.o
[ 26%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_subc.c.o
[ 27%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_sub.c.o
[ 27%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_dot.c.o
[ 28%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_cross.c.o
[ 29%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_addmat.c.o
[ 30%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_submat.c.o
[ 31%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mulmat.c.o
[ 31%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mulcmatvec.c.o
[ 32%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_detmat.c.o
[ 33%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_invmat.c.o
[ 34%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_transmat.c.o
[ 35%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_identitymat.c.o
[ 36%] Building C object modules/CMakeFiles/NE10.dir/__/common/NE10_mask_table.c.o
[ 36%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft.c.o
[ 37%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_float32.c.o
[ 38%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_float32.c.o
[ 39%] Building CXX object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_int32.cpp.o
[ 40%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_rfft_float32.c.o
[ 40%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int32.c.o
[ 41%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int16.c.o
[ 42%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fir.c.o
[ 43%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fir_init.c.o
[ 44%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_iir.c.o
[ 45%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_iir_init.c.o
[ 45%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_resize.c.o
[ 46%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_rotate.c.o
[ 47%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_boxfilter.c.o
/Users/Jun/Downloads/Ne10-master/modules/imgproc/NE10_boxfilter.c:382:18: warning: 
      format specifies type 'int' but the argument has type 'unsigned long'
      [-Wformat]
                 sizeof (ne10_uint8_t) *
                 ^~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
/Users/Jun/Downloads/Ne10-master/modules/imgproc/NE10_boxfilter.c:382:18: warning: 
      format specifies type 'int' but the argument has type 'unsigned long'
      [-Wformat]
                 sizeof (ne10_uint8_t) *
                 ^~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[ 48%] Building C object modules/CMakeFiles/NE10.dir/physics/NE10_physics.c.o
[ 49%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_addc.neon.c.o
[ 50%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_divc.neon.c.o
[ 50%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mlac.neon.c.o
[ 51%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_mulc.neon.c.o
[ 52%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_rsbc.neon.c.o
[ 53%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_setc.neon.c.o
[ 54%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_subc.neon.c.o
[ 54%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_addmat.neon.c.o
[ 55%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_submat.neon.c.o
[ 56%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_float32.neonintrinsic.c.o
[ 57%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int32.neonintrinsic.c.o
[ 58%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_int16.neonintrinsic.c.o
[ 59%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_rfft_float32.neonintrinsic.c.o
[ 59%] Building CXX object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_float32.neonintrinsic.cpp.o
[ 60%] Building CXX object modules/CMakeFiles/NE10.dir/dsp/NE10_fft_generic_int32.neonintrinsic.cpp.o
[ 61%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_resize.neon.c.o
[ 62%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_boxfilter.neon.c.o
/Users/Jun/Downloads/Ne10-master/modules/imgproc/NE10_boxfilter.neon.c:281:18: warning: 
      format specifies type 'int' but the argument has type 'unsigned long'
      [-Wformat]
                 sizeof (ne10_uint32_t) *
                 ^~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
/Users/Jun/Downloads/Ne10-master/modules/imgproc/NE10_boxfilter.neon.c:281:18: warning: 
      format specifies type 'int' but the argument has type 'unsigned long'
      [-Wformat]
                 sizeof (ne10_uint32_t) *
                 ^~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[ 63%] Building C object modules/CMakeFiles/NE10.dir/physics/NE10_physics.neon.c.o
[ 63%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_abs_ios.neon.s.o
[ 64%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_add_ios.neon.s.o
[ 65%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_div_ios.neon.s.o
[ 66%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_len_ios.neon.s.o
[ 67%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_mla_ios.neon.s.o
[ 68%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_mul_ios.neon.s.o
[ 68%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_normalize_ios.neon.s.o
[ 69%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_sub_ios.neon.s.o
[ 70%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_dot_ios.neon.s.o
[ 71%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_cross_ios.neon.s.o
[ 72%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_mulmat_ios.neon.s.o
[ 72%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_mulcmatvec_ios.neon.s.o
[ 73%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_detmat_ios.neon.s.o
[ 74%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_invmat_ios.neon.s.o
[ 75%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_transmat_ios.neon.s.o
[ 76%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_identitymat_ios.neon.s.o
[ 77%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_rotate_ios.neon.s.o
[ 77%] Building C object modules/CMakeFiles/NE10.dir/CMakeFiles/NE10.dir/NE10_physics_ios.neon.s.o
[ 78%] Building C object modules/CMakeFiles/NE10.dir/NE10_init.c.o
[ 79%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_init_math.c.o
[ 80%] Building C object modules/CMakeFiles/NE10.dir/dsp/NE10_init_dsp.c.o
[ 81%] Building C object modules/CMakeFiles/NE10.dir/imgproc/NE10_init_imgproc.c.o
[ 81%] Building C object modules/CMakeFiles/NE10.dir/physics/NE10_init_physics.c.o
[ 82%] Linking C static library libNE10.a
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: for architecture: armv7 file: libNE10.a(NE10_physics.neon.c.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: for architecture: armv7 file: libNE10.a(NE10_rotate_ios.neon.s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: for architecture: armv7 file: libNE10.a(NE10_physics_ios.neon.s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: for architecture: armv7s file: libNE10.a(NE10_physics.neon.c.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: for architecture: armv7s file: libNE10.a(NE10_rotate_ios.neon.s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: for architecture: armv7s file: libNE10.a(NE10_physics_ios.neon.s.o) has no symbols
[ 82%] Built target NE10
Scanning dependencies of target NE10_test_static
[ 82%] Building C object samples/CMakeFiles/NE10_test_static.dir/NE10_sample_complex_fft.c.o
[ 83%] Building C object samples/CMakeFiles/NE10_test_static.dir/NE10_sample_fir.c.o
[ 84%] Building C object samples/CMakeFiles/NE10_test_static.dir/NE10_sample_intro.c.o
[ 85%] Building C object samples/CMakeFiles/NE10_test_static.dir/NE10_sample_matrix_multiply.c.o
[ 86%] Building C object samples/CMakeFiles/NE10_test_static.dir/NE10_samples.c.o
[ 87%] Linking CXX executable NE10_test_static
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of iOS 7 [-Wdeprecated]
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of iOS 7 [-Wdeprecated]
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of iOS 7 [-Wdeprecated]
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of iOS 7 [-Wdeprecated]
ld: library not found for -lcrt1.3.1.o
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [samples/NE10_test_static] Error 1
make[1]: *** [samples/CMakeFiles/NE10_test_static.dir/all] Error 2
make: *** [all] Error 2_

Hope it is helpful to find the solution. Thanks.
lieff commented 7 years ago

Looks like it's cmake (from brew?) new xcode support issue. It must change -lstdc++ -> -lc++ linker switch by default.

JunFang-NWPU commented 7 years ago

Yes, I install cmake using brew. Is it the problem? And How to fix it? Thanks.

lieff commented 7 years ago

It must be fixed in cmake itself, but as quick hack may be this helps: https://stackoverflow.com/questions/27178106/linking-libc-to-cmake-project-on-linux

JunFang-NWPU commented 7 years ago

Thanks. I will try and get back to you soon.

JunFang-NWPU commented 7 years ago

I read #142 and try some solutions. Xcode has reported many error information, as updated in the original question. @joesavage

joesavage commented 7 years ago

It looks like you've followed almost exactly the same path as @tipycalFlow in #142. And from the errors you've updated your original question with, it looks like you've reached the same conclusion too. As I suspected, the math functions being used in the iOS demo are causing you problems due to #150.

As a workaround, I think you should be able to build the demo for a 32-bit target, linking it against a version of the library compiled for ARMv7. I do remember reading something recently about Apple dropping support for 32-bit apps, though, so I'm not sure how easy that is to do now. In any case, another temporary solution is to simply remove the math functions from the demo application. Ultimately, though, this is something we should fix by providing better 64-bit support in the library, as outlined in #150.

JunFang-NWPU commented 7 years ago

@joesavage Current iphones (from 5s to 7+) are all ARM64. So it means we cannot use the Ne10 framework on these iphones if we need any math functions which are reported error? Is the 64-bit support on the plan?

Thanks.

joesavage commented 7 years ago

Even though most iPhones are 64-bit machines these days, that shouldn't prevent you from running them in AArch32 mode, which would allow you to use Ne10's ARMv7-only math and physics functions. That being said, doing this is often undesirable, and as I noted previously may soon be impossible.

Resolving issue #150 by providing AArch64 support for these functions is really important because of this. I can't make any guarantees for when (or even if) this will be resolved, however, as Ne10 has a severe lack of development resources at the moment.

JunFang-NWPU commented 7 years ago

Got it. Thanks.

JunFang-NWPU commented 7 years ago

I successfully run the demo on my iphone 6s+ using following method:

  cd $NE10_PATH
  mkdir build && cd build
  export IOS_DEVELOPER_PATH=/Applications/Xcode.app/Contents/Developer
  export NE10_IOS_TARGET_ARCH=armv7                               
  cmake -DCMAKE_TOOLCHAIN_FILE=../ios/ios_config.cmake .. -DMIN_IOS_VER=8.0 (according to issue #142 )
  make
  make install

Open demo project in XCode. Then set "Deployment Target" to "8.0" or later set "Build Active Architecture Only" to "No" If there are linker errors set “Enable Bitcode" to "No"

Hope it can help.