Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
libvpx can't compile with CPU_FLAGS_X86 mmx or sse2
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Wed Apr 12, 2017 7:24 pm    Post subject: libvpx can't compile with CPU_FLAGS_X86 mmx or sse2 Reply with quote

When I try to compile libvpx, I'm getting this error:
Code:
    [CREATE] libvpx.ver
echo "{ global:" > libvpx.ver
for f in /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp8/exports_enc /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp8/exports_dec /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp9/exports_enc /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp9/exports_dec /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vpx/exports_com /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vpx/exports_enc /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vpx/exports_dec; do awk '{print $2";"}' < $f >>libvpx.ver; done
echo "local: *; };" >> libvpx.ver
x86_64-pc-linux-gnux32-g++ -shared -Wl,-O1 -Wl,--as-needed -mx32 -Wl,--no-undefined -Wl,-soname,libvpx.so.3 -Wl,--version-script,libvpx.ver -o libvpx.so.3.0.0 vpx/src/vpx_decoder.c.o vpx/src/vpx_encoder.c.o vpx/src/vpx_codec.c.o vpx/src/vpx_image.c.o vpx/src/vpx_psnr.c.o vpx_mem/vpx_mem.c.o vpx_scale/generic/vpx_scale.c.o vpx_scale/generic/yv12config.c.o vpx_scale/generic/yv12extend.c.o vpx_scale/generic/gen_scalers.c.o vpx_scale/vpx_scale_rtcd.c.o vpx_dsp/prob.c.o vpx_dsp/bitwriter.c.o vpx_dsp/bitwriter_buffer.c.o vpx_dsp/bitreader.c.o vpx_dsp/bitreader_buffer.c.o vpx_dsp/intrapred.c.o vpx_dsp/vpx_convolve.c.o vpx_dsp/x86/vpx_asm_stubs.c.o vpx_dsp/loopfilter.c.o vpx_dsp/x86/loopfilter_sse2.c.o vpx_dsp/fwd_txfm.c.o vpx_dsp/x86/fwd_txfm_sse2.c.o vpx_dsp/inv_txfm.c.o vpx_dsp/x86/inv_txfm_sse2.c.o vpx_dsp/quantize.c.o vpx_dsp/x86/quantize_sse2.c.o vpx_dsp/sad.c.o vpx_dsp/subtract.c.o vpx_dsp/variance.c.o vpx_dsp/x86/variance_mmx.c.o vpx_dsp/x86/variance_sse2.c.o vpx_dsp/x86/halfpix_variance_sse2.c.o vpx_dsp/vpx_dsp_rtcd.c.o vpx_util/vpx_thread.c.o vp8/common/alloccommon.c.o vp8/common/blockd.c.o vp8/common/copy_c.c.o vp8/common/debugmodes.c.o vp8/common/dequantize.c.o vp8/common/entropy.c.o vp8/common/entropymode.c.o vp8/common/entropymv.c.o vp8/common/extend.c.o vp8/common/filter.c.o vp8/common/findnearmv.c.o vp8/common/generic/systemdependent.c.o vp8/common/idct_blk.c.o vp8/common/idctllm.c.o vp8/common/rtcd.c.o vp8/common/vp8_loopfilter.c.o vp8/common/loopfilter_filters.c.o vp8/common/mbpitch.c.o vp8/common/modecont.c.o vp8/common/quant_common.c.o vp8/common/reconinter.c.o vp8/common/reconintra.c.o vp8/common/reconintra4x4.c.o vp8/common/setupintrarecon.c.o vp8/common/swapyv12buffer.c.o vp8/common/treecoder.c.o vp8/common/x86/filter_x86.c.o vp8/common/x86/vp8_asm_stubs.c.o vp8/common/x86/loopfilter_x86.c.o vp8/common/x86/idct_blk_mmx.c.o vp8/common/x86/idct_blk_sse2.c.o vp8/vp8_cx_iface.c.o vp8/encoder/bitstream.c.o vp8/encoder/boolhuff.c.o vp8/encoder/dct.c.o vp8/encoder/encodeframe.c.o vp8/encoder/encodeintra.c.o vp8/encoder/encodemb.c.o vp8/encoder/encodemv.c.o vp8/encoder/ethreading.c.o vp8/encoder/firstpass.c.o vp8/encoder/denoising.c.o vp8/encoder/lookahead.c.o vp8/encoder/mcomp.c.o vp8/encoder/modecosts.c.o vp8/encoder/onyx_if.c.o vp8/encoder/pickinter.c.o vp8/encoder/picklpf.c.o vp8/encoder/vp8_quantize.c.o vp8/encoder/ratectrl.c.o vp8/encoder/rdopt.c.o vp8/encoder/segmentation.c.o vp8/encoder/tokenize.c.o vp8/encoder/treewriter.c.o vp8/encoder/temporal_filter.c.o vp8/encoder/x86/vp8_enc_stubs_mmx.c.o vp8/encoder/x86/vp8_quantize_sse2.c.o vp8/encoder/x86/denoising_sse2.c.o vp8/encoder/x86/vp8_enc_stubs_sse2.c.o vp8/vp8_dx_iface.c.o vp8/decoder/dboolhuff.c.o vp8/decoder/decodemv.c.o vp8/decoder/decodeframe.c.o vp8/decoder/detokenize.c.o vp8/decoder/onyxd_if.c.o vp8/decoder/threading.c.o vp9/common/vp9_alloccommon.c.o vp9/common/vp9_blockd.c.o vp9/common/vp9_debugmodes.c.o vp9/common/vp9_entropy.c.o vp9/common/vp9_entropymode.c.o vp9/common/vp9_entropymv.c.o vp9/common/vp9_frame_buffers.c.o vp9/common/vp9_idct.c.o vp9/common/vp9_filter.c.o vp9/common/vp9_pred_common.c.o vp9/common/vp9_rtcd.c.o vp9/common/vp9_scale.c.o vp9/common/vp9_seg_common.c.o vp9/common/vp9_tile_common.c.o vp9/common/vp9_loopfilter.c.o vp9/common/vp9_thread_common.c.o vp9/common/vp9_mvref_common.c.o vp9/common/vp9_quant_common.c.o vp9/common/vp9_reconinter.c.o vp9/common/vp9_reconintra.c.o vp9/common/vp9_common_data.c.o vp9/common/vp9_scan.c.o vp9/common/x86/vp9_idct_intrin_sse2.c.o vp9/vp9_cx_iface.c.o vp9/encoder/vp9_avg.c.o vp9/encoder/vp9_bitstream.c.o vp9/encoder/vp9_context_tree.c.o vp9/encoder/vp9_cost.c.o vp9/encoder/vp9_dct.c.o vp9/encoder/vp9_encodeframe.c.o vp9/encoder/vp9_encodemb.c.o vp9/encoder/vp9_encodemv.c.o vp9/encoder/vp9_ethread.c.o vp9/encoder/vp9_extend.c.o vp9/encoder/vp9_firstpass.c.o vp9/encoder/vp9_lookahead.c.o vp9/encoder/vp9_mcomp.c.o vp9/encoder/vp9_encoder.c.o vp9/encoder/vp9_picklpf.c.o vp9/encoder/vp9_quantize.c.o vp9/encoder/vp9_ratectrl.c.o vp9/encoder/vp9_rd.c.o vp9/encoder/vp9_rdopt.c.o vp9/encoder/vp9_pickmode.c.o vp9/encoder/vp9_segmentation.c.o vp9/encoder/vp9_speed_features.c.o vp9/encoder/vp9_subexp.c.o vp9/encoder/vp9_svc_layercontext.c.o vp9/encoder/vp9_resize.c.o vp9/encoder/vp9_tokenize.c.o vp9/encoder/vp9_treewriter.c.o vp9/encoder/vp9_aq_variance.c.o vp9/encoder/vp9_aq_cyclicrefresh.c.o vp9/encoder/vp9_aq_complexity.c.o vp9/encoder/vp9_skin_detection.c.o vp9/encoder/vp9_temporal_filter.c.o vp9/encoder/vp9_mbgraph.c.o vp9/encoder/x86/vp9_avg_intrin_sse2.c.o vp9/encoder/x86/vp9_quantize_sse2.c.o vp9/encoder/x86/vp9_dct_sse2.c.o vp9/vp9_dx_iface.c.o vp9/decoder/vp9_decodemv.c.o vp9/decoder/vp9_decodeframe.c.o vp9/decoder/vp9_detokenize.c.o vp9/decoder/vp9_dthread.c.o vp9/decoder/vp9_decoder.c.o vp9/decoder/vp9_dsubexp.c.o vpx_config.c.o vpx_ports/emms.asm.o vpx_ports/x86_abi_support.asm.o vpx_dsp/x86/intrapred_sse2.asm.o vpx_dsp/x86/vpx_subpixel_8t_sse2.asm.o vpx_dsp/x86/vpx_subpixel_bilinear_sse2.asm.o vpx_dsp/x86/vpx_convolve_copy_sse2.asm.o vpx_dsp/x86/loopfilter_mmx.asm.o vpx_dsp/x86/inv_wht_sse2.asm.o vpx_dsp/x86/sad_mmx.asm.o vpx_dsp/x86/sad_sse3.asm.o vpx_dsp/x86/sad4d_sse2.asm.o vpx_dsp/x86/sad_sse2.asm.o vpx_dsp/x86/subtract_sse2.asm.o vpx_dsp/x86/variance_impl_mmx.asm.o vpx_dsp/x86/halfpix_variance_impl_sse2.asm.o vpx_dsp/x86/ssim_opt_x86_64.asm.o vpx_dsp/x86/subpel_variance_sse2.asm.o vp8/common/x86/dequantize_mmx.asm.o vp8/common/x86/idctllm_mmx.asm.o vp8/common/x86/iwalsh_mmx.asm.o vp8/common/x86/vp8_loopfilter_mmx.asm.o vp8/common/x86/recon_mmx.asm.o vp8/common/x86/subpixel_mmx.asm.o vp8/common/x86/copy_sse2.asm.o vp8/common/x86/idctllm_sse2.asm.o vp8/common/x86/recon_sse2.asm.o vp8/common/x86/subpixel_sse2.asm.o vp8/common/x86/loopfilter_sse2.asm.o vp8/common/x86/iwalsh_sse2.asm.o vp8/common/x86/copy_sse3.asm.o vp8/common/x86/loopfilter_block_sse2_x86_64.asm.o vp8/encoder/x86/dct_mmx.asm.o vp8/encoder/x86/dct_sse2.asm.o vp8/encoder/x86/fwalsh_sse2.asm.o vp8/encoder/x86/temporal_filter_apply_sse2.asm.o vp8/encoder/x86/quantize_mmx.asm.o vp8/encoder/x86/encodeopt.asm.o vp9/encoder/x86/vp9_temporal_filter_apply_sse2.asm.o vp9/encoder/x86/vp9_dct_mmx.asm.o vp9/encoder/x86/vp9_error_sse2.asm.o -lpthread -lm
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance64x64_sse2':
variance_sse2.c:(.text+0xa3e): undefined reference to `vpx_sub_pixel_variance16xh_sse2'
variance_sse2.c:(.text+0xa87): undefined reference to `vpx_sub_pixel_variance16xh_sse2'
variance_sse2.c:(.text+0xada): undefined reference to `vpx_sub_pixel_variance16xh_sse2'
variance_sse2.c:(.text+0xb2d): undefined reference to `vpx_sub_pixel_variance16xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance64x32_sse2':
variance_sse2.c:(.text+0xbe0): undefined reference to `vpx_sub_pixel_variance16xh_sse2'
vpx_dsp/x86/variance_sse2.c.o:variance_sse2.c:(.text+0xc29): more undefined references to `vpx_sub_pixel_variance16xh_sse2' follow
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance8x16_sse2':
variance_sse2.c:(.text+0x119a): undefined reference to `vpx_sub_pixel_variance8xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance8x8_sse2':
variance_sse2.c:(.text+0x120a): undefined reference to `vpx_sub_pixel_variance8xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance8x4_sse2':
variance_sse2.c:(.text+0x127a): undefined reference to `vpx_sub_pixel_variance8xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance4x8_sse':
variance_sse2.c:(.text+0x12ea): undefined reference to `vpx_sub_pixel_variance4xh_sse'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance4x4_sse':
variance_sse2.c:(.text+0x135a): undefined reference to `vpx_sub_pixel_variance4xh_sse'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance64x64_ssse3':
variance_sse2.c:(.text+0x13ed): undefined reference to `vpx_sub_pixel_variance16xh_ssse3'
variance_sse2.c:(.text+0x1436): undefined reference to `vpx_sub_pixel_variance16xh_ssse3'
variance_sse2.c:(.text+0x1489): undefined reference to `vpx_sub_pixel_variance16xh_ssse3'
variance_sse2.c:(.text+0x14dc): undefined reference to `vpx_sub_pixel_variance16xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance64x32_ssse3':
variance_sse2.c:(.text+0x158f): undefined reference to `vpx_sub_pixel_variance16xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o:variance_sse2.c:(.text+0x15d8): more undefined references to `vpx_sub_pixel_variance16xh_ssse3' follow
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance8x16_ssse3':
variance_sse2.c:(.text+0x1b49): undefined reference to `vpx_sub_pixel_variance8xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance8x8_ssse3':
variance_sse2.c:(.text+0x1bb9): undefined reference to `vpx_sub_pixel_variance8xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance8x4_ssse3':
variance_sse2.c:(.text+0x1c29): undefined reference to `vpx_sub_pixel_variance8xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance4x8_ssse3':
variance_sse2.c:(.text+0x1c99): undefined reference to `vpx_sub_pixel_variance4xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_variance4x4_ssse3':
variance_sse2.c:(.text+0x1d09): undefined reference to `vpx_sub_pixel_variance4xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance64x64_sse2':
variance_sse2.c:(.text+0x1db9): undefined reference to `vpx_sub_pixel_avg_variance16xh_sse2'
variance_sse2.c:(.text+0x1e18): undefined reference to `vpx_sub_pixel_avg_variance16xh_sse2'
variance_sse2.c:(.text+0x1e7c): undefined reference to `vpx_sub_pixel_avg_variance16xh_sse2'
variance_sse2.c:(.text+0x1ee0): undefined reference to `vpx_sub_pixel_avg_variance16xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance64x32_sse2':
variance_sse2.c:(.text+0x1fac): undefined reference to `vpx_sub_pixel_avg_variance16xh_sse2'
vpx_dsp/x86/variance_sse2.c.o:variance_sse2.c:(.text+0x200b): more undefined references to `vpx_sub_pixel_avg_variance16xh_sse2' follow
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance8x16_sse2':
variance_sse2.c:(.text+0x2687): undefined reference to `vpx_sub_pixel_avg_variance8xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance8x8_sse2':
variance_sse2.c:(.text+0x270c): undefined reference to `vpx_sub_pixel_avg_variance8xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance8x4_sse2':
variance_sse2.c:(.text+0x2791): undefined reference to `vpx_sub_pixel_avg_variance8xh_sse2'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance4x8_sse':
variance_sse2.c:(.text+0x2816): undefined reference to `vpx_sub_pixel_avg_variance4xh_sse'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance4x4_sse':
variance_sse2.c:(.text+0x289b): undefined reference to `vpx_sub_pixel_avg_variance4xh_sse'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance64x64_ssse3':
variance_sse2.c:(.text+0x294b): undefined reference to `vpx_sub_pixel_avg_variance16xh_ssse3'
variance_sse2.c:(.text+0x29aa): undefined reference to `vpx_sub_pixel_avg_variance16xh_ssse3'
variance_sse2.c:(.text+0x2a0e): undefined reference to `vpx_sub_pixel_avg_variance16xh_ssse3'
variance_sse2.c:(.text+0x2a72): undefined reference to `vpx_sub_pixel_avg_variance16xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance64x32_ssse3':
variance_sse2.c:(.text+0x2b3e): undefined reference to `vpx_sub_pixel_avg_variance16xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o:variance_sse2.c:(.text+0x2b9d): more undefined references to `vpx_sub_pixel_avg_variance16xh_ssse3' follow
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance8x16_ssse3':
variance_sse2.c:(.text+0x3219): undefined reference to `vpx_sub_pixel_avg_variance8xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance8x8_ssse3':
variance_sse2.c:(.text+0x329e): undefined reference to `vpx_sub_pixel_avg_variance8xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance8x4_ssse3':
variance_sse2.c:(.text+0x3323): undefined reference to `vpx_sub_pixel_avg_variance8xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance4x8_ssse3':
variance_sse2.c:(.text+0x33a8): undefined reference to `vpx_sub_pixel_avg_variance4xh_ssse3'
vpx_dsp/x86/variance_sse2.c.o: In function `vpx_sub_pixel_avg_variance4x4_ssse3':
variance_sse2.c:(.text+0x342d): undefined reference to `vpx_sub_pixel_avg_variance4xh_ssse3'
vp8/common/reconintra.c.o: In function `vp8_init_intra_predictors_internal':
reconintra.c:(.text+0x2): undefined reference to `vpx_v_predictor_16x16_sse2'
reconintra.c:(.text+0x1a): undefined reference to `vpx_tm_predictor_16x16_sse2'
reconintra.c:(.text+0x26): undefined reference to `vpx_dc_128_predictor_16x16_sse2'
reconintra.c:(.text+0x32): undefined reference to `vpx_dc_top_predictor_16x16_sse2'
reconintra.c:(.text+0x3e): undefined reference to `vpx_dc_left_predictor_16x16_sse2'
reconintra.c:(.text+0x4a): undefined reference to `vpx_dc_predictor_16x16_sse2'
reconintra.c:(.text+0x56): undefined reference to `vpx_v_predictor_8x8_sse'
reconintra.c:(.text+0x6e): undefined reference to `vpx_tm_predictor_8x8_sse2'
reconintra.c:(.text+0x7a): undefined reference to `vpx_dc_128_predictor_8x8_sse'
reconintra.c:(.text+0x86): undefined reference to `vpx_dc_top_predictor_8x8_sse'
reconintra.c:(.text+0x92): undefined reference to `vpx_dc_left_predictor_8x8_sse'
reconintra.c:(.text+0x9e): undefined reference to `vpx_dc_predictor_8x8_sse'
vp8/common/reconintra4x4.c.o: In function `vp8_init_intra4x4_predictors_internal':
reconintra4x4.c:(.text+0x2): undefined reference to `vpx_dc_predictor_4x4_sse'
reconintra4x4.c:(.text+0xe): undefined reference to `vpx_tm_predictor_4x4_sse'
vp8/encoder/encodemb.c.o: In function `vp8_subtract_b':
encodemb.c:(.text+0x92c): undefined reference to `vpx_subtract_block_sse2'
vp8/encoder/encodemb.c.o: In function `vp8_subtract_mbuv':
encodemb.c:(.text+0x975): undefined reference to `vpx_subtract_block_sse2'
encodemb.c:(.text+0x9a1): undefined reference to `vpx_subtract_block_sse2'
vp8/encoder/encodemb.c.o: In function `vp8_subtract_mby':
encodemb.c:(.text+0x9d8): undefined reference to `vpx_subtract_block_sse2'
vp8/encoder/onyx_if.c.o: In function `vp8_create_compressor':
onyx_if.c:(.text+0x3152): undefined reference to `vpx_sad16x16_sse2'
onyx_if.c:(.text+0x31bd): undefined reference to `vpx_sad16x16x4d_sse2'
onyx_if.c:(.text+0x31ca): undefined reference to `vpx_sad16x8_sse2'
onyx_if.c:(.text+0x322f): undefined reference to `vpx_sad16x8x4d_sse2'
onyx_if.c:(.text+0x323c): undefined reference to `vpx_sad8x16_sse2'
onyx_if.c:(.text+0x32a1): undefined reference to `vpx_sad8x16x4d_sse2'
onyx_if.c:(.text+0x32ae): undefined reference to `vpx_sad8x8_sse2'
onyx_if.c:(.text+0x3313): undefined reference to `vpx_sad8x8x4d_sse2'
onyx_if.c:(.text+0x3320): undefined reference to `vpx_sad4x4_sse'
onyx_if.c:(.text+0x3385): undefined reference to `vpx_sad4x4x4d_sse'
vp9/common/vp9_idct.c.o: In function `vp9_iwht4x4_add':
vp9_idct.c:(.text+0x3e1): undefined reference to `vpx_iwht4x4_16_add_sse2'
vp9/common/vp9_scale.c.o: In function `vp9_setup_scale_factors_for_frame':
vp9_scale.c:(.text+0x212): undefined reference to `vpx_convolve_copy_sse2'
vp9_scale.c:(.text+0x21c): undefined reference to `vpx_convolve_avg_sse2'
vp9/common/vp9_reconintra.c.o: In function `vp9_init_intra_predictors_internal':
vp9_reconintra.c:(.text+0x2): undefined reference to `vpx_v_predictor_4x4_sse'
vp9_reconintra.c:(.text+0xe): undefined reference to `vpx_v_predictor_8x8_sse'
vp9_reconintra.c:(.text+0x1a): undefined reference to `vpx_v_predictor_16x16_sse2'
vp9_reconintra.c:(.text+0x26): undefined reference to `vpx_v_predictor_32x32_sse2'
vp9_reconintra.c:(.text+0x182): undefined reference to `vpx_tm_predictor_4x4_sse'
vp9_reconintra.c:(.text+0x18e): undefined reference to `vpx_tm_predictor_8x8_sse2'
vp9_reconintra.c:(.text+0x19a): undefined reference to `vpx_tm_predictor_16x16_sse2'
vp9_reconintra.c:(.text+0x1a6): undefined reference to `vpx_tm_predictor_32x32_sse2'
vp9_reconintra.c:(.text+0x1b2): undefined reference to `vpx_dc_128_predictor_4x4_sse'
vp9_reconintra.c:(.text+0x1be): undefined reference to `vpx_dc_128_predictor_8x8_sse'
vp9_reconintra.c:(.text+0x1ca): undefined reference to `vpx_dc_128_predictor_16x16_sse2'
vp9_reconintra.c:(.text+0x1d6): undefined reference to `vpx_dc_128_predictor_32x32_sse2'
vp9_reconintra.c:(.text+0x1e2): undefined reference to `vpx_dc_top_predictor_4x4_sse'
vp9_reconintra.c:(.text+0x1ee): undefined reference to `vpx_dc_top_predictor_8x8_sse'
vp9_reconintra.c:(.text+0x1fa): undefined reference to `vpx_dc_top_predictor_16x16_sse2'
vp9_reconintra.c:(.text+0x206): undefined reference to `vpx_dc_top_predictor_32x32_sse2'
vp9_reconintra.c:(.text+0x212): undefined reference to `vpx_dc_left_predictor_4x4_sse'
vp9_reconintra.c:(.text+0x21e): undefined reference to `vpx_dc_left_predictor_8x8_sse'
vp9_reconintra.c:(.text+0x22a): undefined reference to `vpx_dc_left_predictor_16x16_sse2'
vp9_reconintra.c:(.text+0x236): undefined reference to `vpx_dc_left_predictor_32x32_sse2'
vp9_reconintra.c:(.text+0x242): undefined reference to `vpx_dc_predictor_4x4_sse'
vp9_reconintra.c:(.text+0x24e): undefined reference to `vpx_dc_predictor_8x8_sse'
vp9_reconintra.c:(.text+0x25a): undefined reference to `vpx_dc_predictor_16x16_sse2'
vp9_reconintra.c:(.text+0x266): undefined reference to `vpx_dc_predictor_32x32_sse2'
vp9/encoder/vp9_encodeframe.c.o: In function `encode_frame_internal':
vp9_encodeframe.c:(.text+0xc125): undefined reference to `vp9_fwht4x4_mmx'
vp9/encoder/vp9_encodemb.c.o: In function `vp9_encode_block_intra':
vp9_encodemb.c:(.text+0x527): undefined reference to `vpx_subtract_block_sse2'
vp9_encodemb.c:(.text+0x621): undefined reference to `vpx_subtract_block_sse2'
vp9_encodemb.c:(.text+0x710): undefined reference to `vpx_subtract_block_sse2'
vp9_encodemb.c:(.text+0x7ff): undefined reference to `vpx_subtract_block_sse2'
vp9/encoder/vp9_encodemb.c.o: In function `vp9_subtract_plane':
vp9_encodemb.c:(.text+0x18a8): undefined reference to `vpx_subtract_block_sse2'
vp9/encoder/vp9_encoder.c.o: In function `vp9_create_compressor':
vp9_encoder.c:(.text+0x2d86): undefined reference to `vpx_sad32x16_sse2'
vp9_encoder.c:(.text+0x2d98): undefined reference to `vpx_sad32x16_avg_sse2'
vp9_encoder.c:(.text+0x2e00): undefined reference to `vpx_sad32x16x4d_sse2'
vp9_encoder.c:(.text+0x2e12): undefined reference to `vpx_sad16x32_sse2'
vp9_encoder.c:(.text+0x2e24): undefined reference to `vpx_sad16x32_avg_sse2'
vp9_encoder.c:(.text+0x2e8c): undefined reference to `vpx_sad16x32x4d_sse2'
vp9_encoder.c:(.text+0x2e9e): undefined reference to `vpx_sad64x32_sse2'
vp9_encoder.c:(.text+0x2eb0): undefined reference to `vpx_sad64x32_avg_sse2'
vp9_encoder.c:(.text+0x2f18): undefined reference to `vpx_sad64x32x4d_sse2'
vp9_encoder.c:(.text+0x2f2a): undefined reference to `vpx_sad32x64_sse2'
vp9_encoder.c:(.text+0x2f3c): undefined reference to `vpx_sad32x64_avg_sse2'
vp9_encoder.c:(.text+0x2fa4): undefined reference to `vpx_sad32x64x4d_sse2'
vp9_encoder.c:(.text+0x2fb6): undefined reference to `vpx_sad32x32_sse2'
vp9_encoder.c:(.text+0x2fc8): undefined reference to `vpx_sad32x32_avg_sse2'
vp9_encoder.c:(.text+0x3034): undefined reference to `vpx_sad32x32x4d_sse2'
vp9_encoder.c:(.text+0x3046): undefined reference to `vpx_sad64x64_sse2'
vp9_encoder.c:(.text+0x3058): undefined reference to `vpx_sad64x64_avg_sse2'
vp9_encoder.c:(.text+0x30c4): undefined reference to `vpx_sad64x64x4d_sse2'
vp9_encoder.c:(.text+0x30d6): undefined reference to `vpx_sad16x16_sse2'
vp9_encoder.c:(.text+0x30e8): undefined reference to `vpx_sad16x16_avg_sse2'
vp9_encoder.c:(.text+0x3157): undefined reference to `vpx_sad16x16x4d_sse2'
vp9_encoder.c:(.text+0x3169): undefined reference to `vpx_sad16x8_sse2'
vp9_encoder.c:(.text+0x317b): undefined reference to `vpx_sad16x8_avg_sse2'
vp9_encoder.c:(.text+0x31ea): undefined reference to `vpx_sad16x8x4d_sse2'
vp9_encoder.c:(.text+0x31fc): undefined reference to `vpx_sad8x16_sse2'
vp9_encoder.c:(.text+0x320e): undefined reference to `vpx_sad8x16_avg_sse2'
vp9_encoder.c:(.text+0x327d): undefined reference to `vpx_sad8x16x4d_sse2'
vp9_encoder.c:(.text+0x328f): undefined reference to `vpx_sad8x8_sse2'
vp9_encoder.c:(.text+0x32a1): undefined reference to `vpx_sad8x8_avg_sse2'
vp9_encoder.c:(.text+0x3310): undefined reference to `vpx_sad8x8x4d_sse2'
vp9_encoder.c:(.text+0x3322): undefined reference to `vpx_sad8x4_sse2'
vp9_encoder.c:(.text+0x3334): undefined reference to `vpx_sad8x4_avg_sse2'
vp9_encoder.c:(.text+0x339e): undefined reference to `vpx_sad8x4x4d_sse2'
vp9_encoder.c:(.text+0x33b0): undefined reference to `vpx_sad4x8_sse'
vp9_encoder.c:(.text+0x33c2): undefined reference to `vpx_sad4x8_avg_sse'
vp9_encoder.c:(.text+0x342c): undefined reference to `vpx_sad4x8x4d_sse'
vp9_encoder.c:(.text+0x343e): undefined reference to `vpx_sad4x4_sse'
vp9_encoder.c:(.text+0x3450): undefined reference to `vpx_sad4x4_avg_sse'
vp9_encoder.c:(.text+0x34bf): undefined reference to `vpx_sad4x4x4d_sse'
vp9/encoder/vp9_encoder.c.o: In function `vp9_get_compressed_data':
vp9_encoder.c:(.text+0x6b72): undefined reference to `vp9_fwht4x4_mmx'
vp9/encoder/vp9_rdopt.c.o: In function `dist_block':
vp9_rdopt.c:(.text+0xaff): undefined reference to `vp9_block_error_sse2'
vp9/encoder/vp9_rdopt.c.o: In function `rd_pick_intra_sub_8x8_y_mode':
vp9_rdopt.c:(.text+0x351a): undefined reference to `vpx_subtract_block_sse2'
vp9_rdopt.c:(.text+0x3610): undefined reference to `vp9_block_error_sse2'
vp9_rdopt.c:(.text+0x3751): undefined reference to `vp9_fwht4x4_mmx'
vp9/encoder/vp9_rdopt.c.o: In function `rd_pick_best_sub8x8_mode':
vp9_rdopt.c:(.text+0x6a24): undefined reference to `vpx_subtract_block_sse2'
vp9_rdopt.c:(.text+0x6b91): undefined reference to `vp9_block_error_sse2'
vp9/encoder/vp9_pickmode.c.o: In function `block_yrd.constprop.11':
vp9_pickmode.c:(.text+0xc4e): undefined reference to `vp9_block_error_fp_sse2'
vp9/encoder/vp9_pickmode.c.o: In function `vp9_pick_inter_mode':
vp9_pickmode.c:(.text+0x2da0): undefined reference to `vpx_convolve_copy_sse2'
vp9_pickmode.c:(.text+0x2e68): undefined reference to `vpx_convolve_copy_sse2'
vp9/encoder/vp9_mbgraph.c.o: In function `do_16x16_motion_iteration':
vp9_mbgraph.c:(.text+0x29e): undefined reference to `vpx_sad16x16_sse2'
vp9/encoder/vp9_mbgraph.c.o: In function `vp9_update_mbgraph_stats':
vp9_mbgraph.c:(.text+0x64f): undefined reference to `vpx_sad16x16_sse2'
vp9_mbgraph.c:(.text+0x6c1): undefined reference to `vpx_sad16x16_sse2'
vp9_mbgraph.c:(.text+0x7a0): undefined reference to `vpx_sad16x16_sse2'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:388: libvpx.so.3.0.0] Error 1
make: *** [Makefile:17: .DEFAULT] Error 2
 * ERROR: media-libs/libvpx-1.5.0::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=media-libs/libvpx-1.5.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-libs/libvpx-1.5.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/environment'.
 * Working directory: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0-abi_x86_x32.x32'
 * S: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0'

>>> Failed to emerge media-libs/libvpx-1.5.0, Log file:

>>>  '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/build.log'
 * Messages for package media-libs/libvpx-1.5.0:
 * ERROR: media-libs/libvpx-1.5.0::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=media-libs/libvpx-1.5.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-libs/libvpx-1.5.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/environment'.
 * Working directory: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0-abi_x86_x32.x32'
 * S: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0'


Disabling sse2 didn't fix it (however, it does seem to have shorted the error message considerably):
Code:
    [CREATE] libvpx.ver
echo "{ global:" > libvpx.ver
for f in /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp8/exports_enc /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp8/exports_dec /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp9/exports_enc /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vp9/exports_dec /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vpx/exports_com /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vpx/exports_enc /var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0/vpx/exports_dec; do awk '{print $2";"}' < $f >>libvpx.ver; done
echo "local: *; };" >> libvpx.ver
x86_64-pc-linux-gnux32-g++ -shared -Wl,-O1 -Wl,--as-needed -mx32 -Wl,--no-undefined -Wl,-soname,libvpx.so.3 -Wl,--version-script,libvpx.ver -o libvpx.so.3.0.0 vpx/src/vpx_decoder.c.o vpx/src/vpx_encoder.c.o vpx/src/vpx_codec.c.o vpx/src/vpx_image.c.o vpx/src/vpx_psnr.c.o vpx_mem/vpx_mem.c.o vpx_scale/generic/vpx_scale.c.o vpx_scale/generic/yv12config.c.o vpx_scale/generic/yv12extend.c.o vpx_scale/generic/gen_scalers.c.o vpx_scale/vpx_scale_rtcd.c.o vpx_dsp/prob.c.o vpx_dsp/bitwriter.c.o vpx_dsp/bitwriter_buffer.c.o vpx_dsp/bitreader.c.o vpx_dsp/bitreader_buffer.c.o vpx_dsp/intrapred.c.o vpx_dsp/vpx_convolve.c.o vpx_dsp/x86/vpx_asm_stubs.c.o vpx_dsp/loopfilter.c.o vpx_dsp/x86/loopfilter_sse2.c.o vpx_dsp/fwd_txfm.c.o vpx_dsp/inv_txfm.c.o vpx_dsp/quantize.c.o vpx_dsp/sad.c.o vpx_dsp/subtract.c.o vpx_dsp/variance.c.o vpx_dsp/x86/variance_mmx.c.o vpx_dsp/vpx_dsp_rtcd.c.o vpx_util/vpx_thread.c.o vp8/common/alloccommon.c.o vp8/common/blockd.c.o vp8/common/copy_c.c.o vp8/common/debugmodes.c.o vp8/common/dequantize.c.o vp8/common/entropy.c.o vp8/common/entropymode.c.o vp8/common/entropymv.c.o vp8/common/extend.c.o vp8/common/filter.c.o vp8/common/findnearmv.c.o vp8/common/generic/systemdependent.c.o vp8/common/idct_blk.c.o vp8/common/idctllm.c.o vp8/common/rtcd.c.o vp8/common/vp8_loopfilter.c.o vp8/common/loopfilter_filters.c.o vp8/common/mbpitch.c.o vp8/common/modecont.c.o vp8/common/quant_common.c.o vp8/common/reconinter.c.o vp8/common/reconintra.c.o vp8/common/reconintra4x4.c.o vp8/common/setupintrarecon.c.o vp8/common/swapyv12buffer.c.o vp8/common/treecoder.c.o vp8/common/x86/filter_x86.c.o vp8/common/x86/vp8_asm_stubs.c.o vp8/common/x86/loopfilter_x86.c.o vp8/common/x86/idct_blk_mmx.c.o vp8/vp8_cx_iface.c.o vp8/encoder/bitstream.c.o vp8/encoder/boolhuff.c.o vp8/encoder/dct.c.o vp8/encoder/encodeframe.c.o vp8/encoder/encodeintra.c.o vp8/encoder/encodemb.c.o vp8/encoder/encodemv.c.o vp8/encoder/ethreading.c.o vp8/encoder/firstpass.c.o vp8/encoder/denoising.c.o vp8/encoder/lookahead.c.o vp8/encoder/mcomp.c.o vp8/encoder/modecosts.c.o vp8/encoder/onyx_if.c.o vp8/encoder/pickinter.c.o vp8/encoder/picklpf.c.o vp8/encoder/vp8_quantize.c.o vp8/encoder/ratectrl.c.o vp8/encoder/rdopt.c.o vp8/encoder/segmentation.c.o vp8/encoder/tokenize.c.o vp8/encoder/treewriter.c.o vp8/encoder/temporal_filter.c.o vp8/encoder/x86/vp8_enc_stubs_mmx.c.o vp8/vp8_dx_iface.c.o vp8/decoder/dboolhuff.c.o vp8/decoder/decodemv.c.o vp8/decoder/decodeframe.c.o vp8/decoder/detokenize.c.o vp8/decoder/onyxd_if.c.o vp8/decoder/threading.c.o vp9/common/vp9_alloccommon.c.o vp9/common/vp9_blockd.c.o vp9/common/vp9_debugmodes.c.o vp9/common/vp9_entropy.c.o vp9/common/vp9_entropymode.c.o vp9/common/vp9_entropymv.c.o vp9/common/vp9_frame_buffers.c.o vp9/common/vp9_idct.c.o vp9/common/vp9_filter.c.o vp9/common/vp9_pred_common.c.o vp9/common/vp9_rtcd.c.o vp9/common/vp9_scale.c.o vp9/common/vp9_seg_common.c.o vp9/common/vp9_tile_common.c.o vp9/common/vp9_loopfilter.c.o vp9/common/vp9_thread_common.c.o vp9/common/vp9_mvref_common.c.o vp9/common/vp9_quant_common.c.o vp9/common/vp9_reconinter.c.o vp9/common/vp9_reconintra.c.o vp9/common/vp9_common_data.c.o vp9/common/vp9_scan.c.o vp9/vp9_cx_iface.c.o vp9/encoder/vp9_avg.c.o vp9/encoder/vp9_bitstream.c.o vp9/encoder/vp9_context_tree.c.o vp9/encoder/vp9_cost.c.o vp9/encoder/vp9_dct.c.o vp9/encoder/vp9_encodeframe.c.o vp9/encoder/vp9_encodemb.c.o vp9/encoder/vp9_encodemv.c.o vp9/encoder/vp9_ethread.c.o vp9/encoder/vp9_extend.c.o vp9/encoder/vp9_firstpass.c.o vp9/encoder/vp9_lookahead.c.o vp9/encoder/vp9_mcomp.c.o vp9/encoder/vp9_encoder.c.o vp9/encoder/vp9_picklpf.c.o vp9/encoder/vp9_quantize.c.o vp9/encoder/vp9_ratectrl.c.o vp9/encoder/vp9_rd.c.o vp9/encoder/vp9_rdopt.c.o vp9/encoder/vp9_pickmode.c.o vp9/encoder/vp9_segmentation.c.o vp9/encoder/vp9_speed_features.c.o vp9/encoder/vp9_subexp.c.o vp9/encoder/vp9_svc_layercontext.c.o vp9/encoder/vp9_resize.c.o vp9/encoder/vp9_tokenize.c.o vp9/encoder/vp9_treewriter.c.o vp9/encoder/vp9_aq_variance.c.o vp9/encoder/vp9_aq_cyclicrefresh.c.o vp9/encoder/vp9_aq_complexity.c.o vp9/encoder/vp9_skin_detection.c.o vp9/encoder/vp9_temporal_filter.c.o vp9/encoder/vp9_mbgraph.c.o vp9/vp9_dx_iface.c.o vp9/decoder/vp9_decodemv.c.o vp9/decoder/vp9_decodeframe.c.o vp9/decoder/vp9_detokenize.c.o vp9/decoder/vp9_dthread.c.o vp9/decoder/vp9_decoder.c.o vp9/decoder/vp9_dsubexp.c.o vpx_config.c.o vpx_ports/emms.asm.o vpx_ports/x86_abi_support.asm.o vpx_dsp/x86/loopfilter_mmx.asm.o vpx_dsp/x86/sad_mmx.asm.o vpx_dsp/x86/sad_sse3.asm.o vpx_dsp/x86/variance_impl_mmx.asm.o vp8/common/x86/dequantize_mmx.asm.o vp8/common/x86/idctllm_mmx.asm.o vp8/common/x86/iwalsh_mmx.asm.o vp8/common/x86/vp8_loopfilter_mmx.asm.o vp8/common/x86/recon_mmx.asm.o vp8/common/x86/subpixel_mmx.asm.o vp8/common/x86/copy_sse3.asm.o vp8/encoder/x86/dct_mmx.asm.o vp8/encoder/x86/quantize_mmx.asm.o vp8/encoder/x86/encodeopt.asm.o vp9/encoder/x86/vp9_dct_mmx.asm.o -lpthread -lm
vp9/encoder/vp9_encodeframe.c.o: In function `encode_frame_internal':
vp9_encodeframe.c:(.text+0xc125): undefined reference to `vp9_fwht4x4_mmx'
vp9/encoder/vp9_encoder.c.o: In function `vp9_get_compressed_data':
vp9_encoder.c:(.text+0x6b72): undefined reference to `vp9_fwht4x4_mmx'
vp9/encoder/vp9_rdopt.c.o: In function `rd_pick_intra_sub_8x8_y_mode':
vp9_rdopt.c:(.text+0x555e): undefined reference to `vp9_fwht4x4_mmx'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:388: libvpx.so.3.0.0] Error 1
make: *** [Makefile:17: .DEFAULT] Error 2
 * ERROR: media-libs/libvpx-1.5.0::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=media-libs/libvpx-1.5.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-libs/libvpx-1.5.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/environment'.
 * Working directory: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0-abi_x86_x32.x32'
 * S: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0'

>>> Failed to emerge media-libs/libvpx-1.5.0, Log file:

>>>  '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/build.log'
 * Messages for package media-libs/libvpx-1.5.0:
 * ERROR: media-libs/libvpx-1.5.0::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=media-libs/libvpx-1.5.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-libs/libvpx-1.5.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-libs/libvpx-1.5.0/temp/environment'.
 * Working directory: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0-abi_x86_x32.x32'
 * S: '/var/tmp/portage/media-libs/libvpx-1.5.0/work/libvpx-1.5.0'


Ultimately, disabling both sse2 and mmx seems to have fixed the error…but what can I do to help fix the problem?
_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Wed Apr 12, 2017 7:35 pm    Post subject: Reply with quote

Is it a new bug, perhaps?
_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6227
Location: Room 101

PostPosted: Wed Apr 12, 2017 8:20 pm    Post subject: Re: libvpx can't compile with CPU_FLAGS_X86 mmx or sse2 Reply with quote

squeegily wrote:
Code:
x86_64-pc-linux-gnux32-g++ -shared -Wl,-O1 -Wl,--as-needed -mx32 [...]

squeegily ... that would be ABI_X86="x32", so I would suspect it is a multilib issue (either it doesn't build with x32, or some required lib isn't built with ABI_X86="x32" and/or CPU_FLAGS_X86="mmx sse2").

best ... khay
Back to top
View user's profile Send private message
fcl
Tux's lil' helper
Tux's lil' helper


Joined: 31 Dec 2016
Posts: 77

PostPosted: Wed Apr 12, 2017 8:24 pm    Post subject: Reply with quote

Seems similar to https://bugs.gentoo.org/show_bug.cgi?id=498364 & https://bugs.gentoo.org/show_bug.cgi?id=499336

What does `emerge -p libvpx` output? the CPU_FLAGS_X86 expands especially
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6227
Location: Room 101

PostPosted: Wed Apr 12, 2017 8:59 pm    Post subject: Reply with quote

fcl wrote:
What does `emerge -p libvpx` output? the CPU_FLAGS_X86 expands especially

fcl ... in which case you'll need to supply '-v,--verbose' along with '-p,--pretend'.

best ... khay
Back to top
View user's profile Send private message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Wed Apr 12, 2017 10:03 pm    Post subject: Reply with quote

fcl wrote:
Seems similar to https://bugs.gentoo.org/show_bug.cgi?id=498364 & https://bugs.gentoo.org/show_bug.cgi?id=499336

What does `emerge -p libvpx` output? the CPU_FLAGS_X86 expands especially

Nothing particularly interesting, really: (Screenshot w/ colors)
Code:
These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] media-libs/libvpx-1.5.0:0/3::gentoo  USE="threads -doc -postproc -static-libs -svc {-test}" ABI_X86="64 (x32) -32" CPU_FLAGS_X86="mmx* sse sse2* sse3 -avx -avx2 -sse4_1 -ssse3" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB


As you can see, SSE and SSE3 are enabled, and MMX and SSE2 are queued to be enabled because I only disabled them via temporary override. (The package is installed currently)
_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6227
Location: Room 101

PostPosted: Wed Apr 12, 2017 10:17 pm    Post subject: Reply with quote

squeegily wrote:
Code:
[ebuild   R    ] media-libs/libvpx-1.5.0:0/3::gentoo  USE="threads -doc -postproc -static-libs -svc {-test}" ABI_X86="64 (x32) -32" CPU_FLAGS_X86="mmx* sse sse2* sse3 -avx -avx2 -sse4_1 -ssse3" 0 KiB

squeegily ... I can't explain why you would get an x32 build, it's not included in your ABI_X86, it's also confusing that you would have x86_64-pc-linux-gnux32-g++ ... so something here doesn't add up.

best ... khay
Back to top
View user's profile Send private message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Wed Apr 12, 2017 11:01 pm    Post subject: Reply with quote

khayyam wrote:
squeegily wrote:
Code:
[ebuild   R    ] media-libs/libvpx-1.5.0:0/3::gentoo  USE="threads -doc -postproc -static-libs -svc {-test}" ABI_X86="64 (x32) -32" CPU_FLAGS_X86="mmx* sse sse2* sse3 -avx -avx2 -sse4_1 -ssse3" 0 KiB

squeegily ... I can't explain why you would get an x32 build, it's not included in your ABI_X86, it's also confusing that you would have x86_64-pc-linux-gnux32-g++ ... so something here doesn't add up.

best ... khay
I'd forgotten but just now realized+remembered that this is an x32 computer. (It's an old Pentium 4, only supports 4GB RAM, which does stand to benefit from both the reduced memory footprint and taking advantage of every instruction available.)

So I suppose that SSE2 and MMX support on x32 may very well just be plain upstream-broken. :?
_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6227
Location: Room 101

PostPosted: Wed Apr 12, 2017 11:28 pm    Post subject: Reply with quote

squeegily wrote:
khayyam wrote:
squeegily wrote:
Code:
[ebuild   R    ] media-libs/libvpx-1.5.0:0/3::gentoo  USE="threads -doc -postproc -static-libs -svc {-test}" ABI_X86="64 (x32) -32" CPU_FLAGS_X86="mmx* sse sse2* sse3 -avx -avx2 -sse4_1 -ssse3" 0 KiB

squeegily ... I can't explain why you would get an x32 build, it's not included in your ABI_X86, it's also confusing that you would have x86_64-pc-linux-gnux32-g++ ... so something here doesn't add up.

I'd forgotten but just now realized+remembered that this is an x32 computer. (It's an old Pentium 4, only supports 4GB RAM, which does stand to benefit from both the reduced memory footprint and taking advantage of every instruction available.)

squeegily ... that may be the case for the processor, but the install is a different matter, you have ABI_X86="64 (x32) -32" (which is no-multilib) yet you have x86_64-pc-linux-gnux32-g++ ... and are compiling for x32. None of that makes sense to me (admittedly my knowledge of multilib is scant).

best ... khay
Back to top
View user's profile Send private message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Wed Apr 12, 2017 11:29 pm    Post subject: Reply with quote

Emerging the unstable libvpx-1.6.1 didn't work, but it looks like some dude came up with the solution 4 years ago: https://github.com/gentoo-arm-ru/overlay/blob/master/media-libs/libvpx/files/libvpx-1.1.0-x32.patch

Going to see if I can't get this adapted to a recent version of libvpx…EDIT: nevermind; they've already been ported. So why is this happening?
_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Wed Apr 12, 2017 11:36 pm    Post subject: Reply with quote

khayyam wrote:
install is a different matter, you have ABI_X86="64 (x32) -32" (which is no-multilib) yet you have x86_64-pc-linux-gnux32-g++ ... and are compiling for x32. None of that makes sense to me (admittedly my knowledge of multilib is scant).

best ... khay
ABI_X86 is undefined in my make.conf…I left it at the profile-provided (default/linux/amd64/13.0/x32) default. Is manually disabling abi_x86_64 recommended/appropriate?

“x86_64-pc-linux-gnux32” came with the make.conf in the default x32 tarball (x32 being, basically, 64-bit: requiring a 64-bit processor and using all 64-bit instructions, it uses the x86_64 kernel rather than having a "dedicated" arch…it makes sense that it would use an x86_64-pc-linux- compiler, no?)

Code:
USE=-abi_x86_64 emerge -v1 libvpx
didn't work; I got the same problems from SSE2 and MMX.
_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Thu Apr 13, 2017 1:22 am    Post subject: Reply with quote

Welp. It looks like /usr/lib was ITS OWN DIRECTORY, rather than a symlink to /usr/libx32 (which was ALSO its own directory)

This was clearly a horribly fubared system and I'm going to assume it caused these problems (I was also experiencing problems with mozilla's "mach" build system being unable to import __future__..then I knew something was up system-wide)

…and, in trying to fix it, I actually wrecked my system. I'm rebootstrapping now, this time WITH a /usr/lib -> libx32 symlink there (that should really be the way the default system image works…)
_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6227
Location: Room 101

PostPosted: Thu Apr 13, 2017 4:21 am    Post subject: Reply with quote

squeegily wrote:
khayyam wrote:
you have ABI_X86="64 (x32) -32" (which is no-multilib) yet you have x86_64-pc-linux-gnux32-g++ ... and are compiling for x32. None of that makes sense to me (admittedly my knowledge of multilib is scant).

ABI_X86 is undefined in my make.conf…I left it at the profile-provided (default/linux/amd64/13.0/x32) default. Is manually disabling abi_x86_64 recommended/appropriate?

squeegily ... my bad, I read that completely wrong, ABI_X86="64 (x32) -32" is not "no-multilib". As I said, my knowledge of multilib is scant, but if the flag can be modified then yes, you could disable it. However, if it's enabled by default in the profile/stage3 then you might find reversing it causes issues. That said, it seems your issue was elsewhere ... so nay mind.

best ... khay
Back to top
View user's profile Send private message
squeegily
n00b
n00b


Joined: 17 Apr 2016
Posts: 57

PostPosted: Sat Apr 15, 2017 3:05 pm    Post subject: Reply with quote

khayyam wrote:
squeegily ... my bad, I read that completely wrong, ABI_X86="64 (x32) -32" is not "no-multilib". As I said, my knowledge of multilib is scant, but if the flag can be modified then yes, you could disable it. However, if it's enabled by default in the profile/stage3 then you might find reversing it causes issues. That said, it seems your issue was elsewhere ... so nay mind.

best ... khay
So, it seems that it DOES, by default, come as x86_64/x32 multilib. Adding ABI_X86="x32" to make.conf converted it into a "pure" setup.

That aside, I've done some testing, and it seems that media-libs/libvpx has this curious compatibility relationship with CPU_FLAGS_X86 on x32:
Code:
        | MMX  | SSE  | SSE2 | SSE3
--------+------+------+------+------
~1.6.1: |  X   |  O   |  X   |  O
~1.6.0: |  O   |  O   |  X   |  O
~1.5.0: |  X   |  O   |  X   |  O
SSE and SSE3 are always safe to enable; MMX only works on 1.6.0-r1.
(Regrettably I was unable to test SSSE3, SSE4_1, AVX, or AVX2.)

I've added the following to my package.use.mask; though, is this something that ought to be upstreamed to default/linux/amd64/13.0/x32?
Code:
media-libs/libvpx cpu_flags_x86_mmx cpu_flags_x86_sse2
~media-libs/libvpx-1.6.0 -cpu_flags_x86_mmx

_________________
~0x4657bfb0
Code:
print pack"C*",split/\D+/,`echo "16iII*o\U@{$/=$z;[(pop,pop,unpack"H*",<>
)]}\EsMsKsN0[lN*1lK[d2%Sa2/d0<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<J]dsJxp"|dc`
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum