Hello,
I encountered some errors while building the assembler files of the
libvpx source for android using ndk-build:
Depending on which .s-file I comes first in the list, I get the
following errors:
vp8/encoder/arm/neon/fastquantizeb_neon.s:151: Error: undefined symbol
vp8_blockd_eob used as an immediate value
vp8/encoder/arm/neon/fastquantizeb_neon.s:152: Error: undefined symbol
vp8_blockd_eob used as an immediate value
vp8/encoder/arm/neon/fastquantizeb_neon.s:241: Error: undefined symbol
vp8_blockd_eob used as an immediate value
vp8/encoder/arm/neon/subtract_neon.s:36: Error: internal_relocation
(type: OFFSET_IMM) not fixed up
vp8/encoder/arm/neon/subtract_neon.s:37: Error: internal_relocation
(type: OFFSET_IMM) not fixed up
vp8/encoder/arm/neon/subtract_neon.s:38: Error: internal_relocation
(type: OFFSET_IMM) not fixed up
vp8/encoder/arm/neon/subtract_neon.s:40: Error: internal_relocation
(type: OFFSET_IMM) not fixed up
vp8/encoder/arm/neon/subtract_neon.s:42: Error: internal_relocation
(type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_subtract_armv6.s:39: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_subtract_armv6.s:40: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_subtract_armv6.s:41: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_subtract_armv6.s:44: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_subtract_armv6.s:46: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:33: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:34: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:35: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:36: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:37: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:38: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:116: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s:221: Error:
internal_relocation (type: OFFSET_IMM) not fixed up
I am using the latest git-version of the libvpx source.
I converted the .asm-files to .s-files using the
ads2gas.pl file
provided in the libvpx source.
These are the generated files I use in my build:
ASM_FILES = \
vpx_scale/arm/neon/vp8_vpxyv12_copyframe_func_neon.s \
vpx_scale/arm/neon/vp8_vpxyv12_copyframeyonly_neon.s \
vpx_scale/arm/neon/vp8_vpxyv12_copysrcframe_func_neon.s \
vpx_scale/arm/neon/vp8_vpxyv12_extendframeborders_neon.s \
vp8/common/arm/armv6/bilinearfilter_v6.s \
vp8/common/arm/armv6/copymem8x4_v6.s \
vp8/common/arm/armv6/copymem8x8_v6.s \
vp8/common/arm/armv6/copymem16x16_v6.s \
vp8/common/arm/armv6/dc_only_idct_add_v6.s \
vp8/common/arm/armv6/iwalsh_v6.s \
vp8/common/arm/armv6/filter_v6.s \
vp8/common/arm/armv6/idct_v6.s \
vp8/common/arm/armv6/loopfilter_v6.s \
vp8/common/arm/armv6/recon_v6.s \
vp8/common/arm/armv6/simpleloopfilter_v6.s \
vp8/common/arm/armv6/sixtappredict8x4_v6.s \
vp8/common/arm/neon/bilinearpredict4x4_neon.s \
vp8/common/arm/neon/bilinearpredict8x4_neon.s \
vp8/common/arm/neon/bilinearpredict8x8_neon.s \
vp8/common/arm/neon/bilinearpredict16x16_neon.s \
vp8/common/arm/neon/copymem8x4_neon.s \
vp8/common/arm/neon/copymem8x8_neon.s \
vp8/common/arm/neon/copymem16x16_neon.s \
vp8/common/arm/neon/dc_only_idct_add_neon.s \
vp8/common/arm/neon/iwalsh_neon.s \
vp8/common/arm/neon/loopfilter_neon.s \
vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.s \
vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.s \
vp8/common/arm/neon/mbloopfilter_neon.s \
vp8/common/arm/neon/recon2b_neon.s \
vp8/common/arm/neon/recon4b_neon.s \
vp8/common/arm/neon/reconb_neon.s \
vp8/common/arm/neon/shortidct4x4llm_1_neon.s \
vp8/common/arm/neon/shortidct4x4llm_neon.s \
vp8/common/arm/neon/sixtappredict4x4_neon.s \
vp8/common/arm/neon/sixtappredict8x4_neon.s \
vp8/common/arm/neon/sixtappredict8x8_neon.s \
vp8/common/arm/neon/sixtappredict16x16_neon.s \
vp8/common/arm/neon/recon16x16mb_neon.s \
vp8/common/arm/neon/buildintrapredictorsmby_neon.s \
vp8/common/arm/neon/save_neon_reg.s \
vp8/encoder/arm/neon/sad8_neon.s \
vp8/encoder/arm/neon/sad16_neon.s \
vp8/encoder/arm/neon/shortfdct_neon.s \
vp8/encoder/arm/neon/variance_neon.s \
vp8/encoder/arm/neon/vp8_mse16x16_neon.s \
vp8/encoder/arm/neon/vp8_subpixelvariance8x8_neon.s \
vp8/encoder/arm/neon/vp8_subpixelvariance16x16_neon.s \
vp8/encoder/arm/neon/vp8_subpixelvariance16x16s_neon.s \
vp8/encoder/arm/neon/vp8_memcpy_neon.s \
vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.s \
vp8/decoder/arm/armv6/dequant_dc_idct_v6.s \
vp8/decoder/arm/armv6/dequant_idct_v6.s \
vp8/decoder/arm/armv6/dequantize_v6.s \
vp8/decoder/arm/neon/idct_dequant_dc_full_2x_neon.s \
vp8/decoder/arm/neon/idct_dequant_dc_0_2x_neon.s \
vp8/decoder/arm/neon/dequant_idct_neon.s \
vp8/decoder/arm/neon/idct_dequant_full_2x_neon.s \
vp8/decoder/arm/neon/idct_dequant_0_2x_neon.s \
vp8/decoder/arm/neon/dequantizeb_neon.s \
vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.s \
vp8/encoder/arm/armv6/vp8_sad16x16_armv6.s \
vp8/encoder/arm/armv6/vp8_variance16x16_armv6.s \
vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.s \
vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.s \
vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.s \
vp8/encoder/arm/armv6/vp8_mse16x16_armv6.s \
vp8/encoder/arm/armv6/vp8_variance8x8_armv6.s \
vp8/encoder/arm/armv6/walsh_v6.s \
\
vp8/encoder/arm/neon/subtract_neon.s \
vp8/encoder/arm/neon/fastquantizeb_neon.s \
vp8/encoder/arm/armv6/vp8_subtract_armv6.s \
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.s \
LOCAL_SRC_FILES += $(ASM_FILES)
How can I solve these errors ?
Greetings,
Stijn Vanden Eynde