Opened 4 years ago

Closed 4 years ago

#61298 closed defect (worksforme)

ffmpeg @4.3.1 +gpl2 +nonfree Build fails Undefined symbols for architecture x86_64: :info:build "_ff_butterflies_fixed_sse2" and more

Reported by: MeNdMont (MeNdMont) Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version: 2.6.3
Keywords: Cc: jeremyhu (Jeremy Huddleston Sequoia)
Port: ffmpeg

Description (last modified by kencu (Ken))

ffmpeg fails building upgrade to 4.3.1 on Mac.

Have attempted a clean and re-upgrade. Output is as follows:

:info:build gmake: Leaving directory '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_multimedia_ffmpeg/ffmpeg/work/ffmpeg-4.3.1'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_multimedia_ffmpeg/ffmpeg/work/ffmpeg-4.3.1" && /opt/local/bin/gmake -j4 -w all 
:info:build Exit code: 2
:error:build Failed to build ffmpeg: command execution failed
:debug:build Error code: CHILDSTATUS 27960 2
:debug:build Backtrace: command execution failed
:debug:build     while executing
:debug:build "system {*}$notty {*}$nice $fullcmdstring"
:debug:build     invoked from within
:debug:build "command_exec build"
:debug:build     (procedure "portbuild::build_main" line 8)
:debug:build     invoked from within
:debug:build "$procedure $targetname"
:error:build See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_multimedia_ffmpeg/ffmpeg/main.log for details.
:info:build /usr/bin/clang -dynamiclib -Wl,-single_module -Wl,-install_name,/opt/local/lib/libavutil.56.dylib,-current_version,56.51.100,-compatibility_version,56 -Wl,-exported_symbols_list,libavutil/libavutil.ver -Llibavcodec -Llibavdevice -Llibavfilter -Llibavformat -Llibavresample -Llibavutil -Llibpostproc -Llibswscale -Llibswresample -L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -arch x86_64  -Wl,-dynamic,-search_paths_first -Qunused-arguments  -o libavutil/libavutil.56.dylib libavutil/adler32.o libavutil/aes.o libavutil/aes_ctr.o libavutil/audio_fifo.o libavutil/avsscanf.o libavutil/avstring.o libavutil/base64.o libavutil/blowfish.o libavutil/bprint.o libavutil/buffer.o libavutil/camellia.o libavutil/cast5.o libavutil/channel_layout.o libavutil/color_utils.o libavutil/cpu.o libavutil/crc.o libavutil/des.o libavutil/dict.o libavutil/display.o libavutil/dovi_meta.o libavutil/downmix_info.o libavutil/encryption_info.o libavutil/error.o libavutil/eval.o libavutil/fifo.o libavutil/file.o libavutil/file_open.o libavutil/fixed_dsp.o libavutil/float_dsp.o libavutil/frame.o libavutil/hash.o libavutil/hdr_dynamic_metadata.o libavutil/hmac.o libavutil/hwcontext.o libavutil/hwcontext_opencl.o libavutil/hwcontext_videotoolbox.o libavutil/imgutils.o libavutil/integer.o libavutil/intmath.o libavutil/lfg.o libavutil/lls.o libavutil/log.o libavutil/log2_tab.o libavutil/lzo.o libavutil/mastering_display_metadata.o libavutil/mathematics.o libavutil/md5.o libavutil/mem.o libavutil/murmur3.o libavutil/opt.o libavutil/parseutils.o libavutil/pixdesc.o libavutil/pixelutils.o libavutil/random_seed.o libavutil/rational.o libavutil/rc4.o libavutil/reverse.o libavutil/ripemd.o libavutil/samplefmt.o libavutil/sha.o libavutil/sha512.o libavutil/slicethread.o libavutil/spherical.o libavutil/stereo3d.o libavutil/tea.o libavutil/threadmessage.o libavutil/time.o libavutil/timecode.o libavutil/tree.o libavutil/twofish.o libavutil/tx.o libavutil/tx_double.o libavutil/tx_float.o libavutil/tx_int32.o libavutil/utils.o libavutil/video_enc_params.o libavutil/x86/cpu.o libavutil/x86/cpuid.o libavutil/x86/fixed_dsp.o libavutil/x86/fixed_dsp_init.o libavutil/x86/float_dsp.o libavutil/x86/float_dsp_init.o libavutil/x86/imgutils.o libavutil/x86/imgutils_init.o libavutil/x86/lls.o libavutil/x86/lls_init.o libavutil/x86/pixelutils.o libavutil/x86/pixelutils_init.o libavutil/xga_font_data.o libavutil/xtea.o  -pthread -lm -Wl,-framework,OpenCL -framework VideoToolbox -lXv -lX11 -lXext -framework CoreFoundation -framework CoreMedia -framework CoreVideo -framework CoreServices 
:info:build Undefined symbols for architecture x86_64:
:info:build   "_ff_butterflies_fixed_sse2", referenced from:
:info:build       _ff_fixed_dsp_init_x86 in fixed_dsp_init.o
:info:build   "_ff_butterflies_float_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_cpu_cpuid", referenced from:
:info:build       _ff_get_cpu_flags_x86 in cpu.o
:info:build   "_ff_cpu_xgetbv", referenced from:
:info:build       _ff_get_cpu_flags_x86 in cpu.o
:info:build   "_ff_evaluate_lls_sse2", referenced from:
:info:build       _ff_init_lls_x86 in lls_init.o
:info:build   "_ff_image_copy_plane_uc_from_sse4", referenced from:
:info:build       _ff_image_copy_plane_uc_from_x86 in imgutils_init.o
:info:build   "_ff_pixelutils_sad_16x16_mmxext", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_16x16_sse2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_32x32_avx2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_32x32_sse2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_8x8_mmx", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_8x8_mmxext", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_a_16x16_sse2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_a_32x32_avx2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_a_32x32_sse2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_u_16x16_sse2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_u_32x32_avx2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_pixelutils_sad_u_32x32_sse2", referenced from:
:info:build       _ff_pixelutils_sad_init_x86 in pixelutils_init.o
:info:build   "_ff_scalarproduct_float_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_update_lls_avx", referenced from:
:info:build       _ff_init_lls_x86 in lls_init.o
:info:build   "_ff_update_lls_fma3", referenced from:
:info:build       _ff_init_lls_x86 in lls_init.o
:info:build   "_ff_update_lls_sse2", referenced from:
:info:build       _ff_init_lls_x86 in lls_init.o
:info:build   "_ff_vector_dmac_scalar_avx", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_dmac_scalar_fma3", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_dmac_scalar_sse2", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_dmul_avx", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_dmul_scalar_avx", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_dmul_scalar_sse2", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_dmul_sse2", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmac_scalar_avx", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmac_scalar_fma3", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmac_scalar_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_add_avx", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_add_fma3", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_add_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_avx", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_reverse_avx", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_reverse_avx2", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_reverse_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_scalar_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_window_3dnowext", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build   "_ff_vector_fmul_window_sse", referenced from:
:info:build       _ff_float_dsp_init_x86 in float_dsp_init.o
:info:build ld: symbol(s) not found for architecture x86_64
:info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)
:info:build gmake: *** [ffbuild/library.mak:103: libavutil/libavutil.56.dylib] Error 1

Attachments (1)

ffmpeg-fail.txt (5.1 MB) - added by MeNdMont (MeNdMont) 4 years ago.
log file

Change History (15)

Changed 4 years ago by MeNdMont (MeNdMont)

Attachment: ffmpeg-fail.txt added

log file

comment:1 Changed 4 years ago by mf2k (Frank Schima)

In the future, please use WikiFormatting and add the port maintainer(s) to Cc (port info --maintainers ffmpeg), if any.

comment:2 Changed 4 years ago by mf2k (Frank Schima)

Cc: jeremyhu added
Description: modified (diff)
Keywords: build Mac ffmpeg removed
Owner: set to dbevans
Status: newassigned

comment:3 Changed 4 years ago by jmroot (Joshua Root)

Summary: Build fails on upgradeffmpeg @4.3.1 Build fails on upgrade

comment:4 Changed 4 years ago by MeNdMont (MeNdMont)

Description: modified (diff)

comment:5 Changed 4 years ago by kencu (Ken)

Description: modified (diff)
Summary: ffmpeg @4.3.1 Build fails on upgradeffmpeg @4.3.1 +gpl2 +nonfree Build fails Undefined symbols for architecture x86_64: :info:build "_ff_butterflies_fixed_sse2" and more

comment:6 Changed 4 years ago by kencu (Ken)

Non-default variants on MacPorts are not as well tested, unfortunately. You'll have better luck with the default variant set, that is built on every buildbot, and usually is fixed to work everywhere. I'm just trying a build of ffmpeg +nonfree on a 10.14 system to see if it will build there.

Last edited 4 years ago by kencu (Ken) (previous) (diff)

comment:7 Changed 4 years ago by kencu (Ken)

It installed without trouble for me, on 10.14, with the +nonfree variant.

$ port -v installed ffmpeg
The following ports are currently installed:
  ffmpeg @4.3.1_0+gpl2 platform='darwin 18' archs='x86_64' date='2020-08-24T17:16:15-0700'
  ffmpeg @4.3.1_0+gpl2+nonfree (active) platform='darwin 18' archs='x86_64' date='2020-10-17T13:38:45-0700'

The specific link line that failed for you did not fail for me:

/usr/bin/clang -dynamiclib -Wl,-single_module -Wl,-install_name,/opt/local/lib/libavutil.56.dylib,-current_version,56.51.100,-compatibility_version,56 -Wl,-exported_symbols_list,libavutil/libavutil.ver -Llibavcodec -Llibavdevice -Llibavfilter -Llibavformat -Llibavresample -Llibavutil -Llibpostproc -Llibswscale -Llibswresample -L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -arch x86_64  -Wl,-dynamic,-search_paths_first -Qunused-arguments  -o libavutil/libavutil.56.dylib libavutil/adler32.o libavutil/aes.o libavutil/aes_ctr.o libavutil/audio_fifo.o libavutil/avsscanf.o libavutil/avstring.o libavutil/base64.o libavutil/blowfish.o libavutil/bprint.o libavutil/buffer.o libavutil/camellia.o libavutil/cast5.o libavutil/channel_layout.o libavutil/color_utils.o libavutil/cpu.o libavutil/crc.o libavutil/des.o libavutil/dict.o libavutil/display.o libavutil/dovi_meta.o libavutil/downmix_info.o libavutil/encryption_info.o libavutil/error.o libavutil/eval.o libavutil/fifo.o libavutil/file.o libavutil/file_open.o libavutil/fixed_dsp.o libavutil/float_dsp.o libavutil/frame.o libavutil/hash.o libavutil/hdr_dynamic_metadata.o libavutil/hmac.o libavutil/hwcontext.o libavutil/hwcontext_opencl.o libavutil/hwcontext_videotoolbox.o libavutil/imgutils.o libavutil/integer.o libavutil/intmath.o libavutil/lfg.o libavutil/lls.o libavutil/log.o libavutil/log2_tab.o libavutil/lzo.o libavutil/mastering_display_metadata.o libavutil/mathematics.o libavutil/md5.o libavutil/mem.o libavutil/murmur3.o libavutil/opt.o libavutil/parseutils.o libavutil/pixdesc.o libavutil/pixelutils.o libavutil/random_seed.o libavutil/rational.o libavutil/rc4.o libavutil/reverse.o libavutil/ripemd.o libavutil/samplefmt.o libavutil/sha.o libavutil/sha512.o libavutil/slicethread.o libavutil/spherical.o libavutil/stereo3d.o libavutil/tea.o libavutil/threadmessage.o libavutil/time.o libavutil/timecode.o libavutil/tree.o libavutil/twofish.o libavutil/tx.o libavutil/tx_double.o libavutil/tx_float.o libavutil/tx_int32.o libavutil/utils.o libavutil/video_enc_params.o libavutil/x86/cpu.o libavutil/x86/cpuid.o libavutil/x86/fixed_dsp.o libavutil/x86/fixed_dsp_init.o libavutil/x86/float_dsp.o libavutil/x86/float_dsp_init.o libavutil/x86/imgutils.o libavutil/x86/imgutils_init.o libavutil/x86/lls.o libavutil/x86/lls_init.o libavutil/x86/pixelutils.o libavutil/x86/pixelutils_init.o libavutil/xga_font_data.o libavutil/xtea.o  -pthread -lm -Wl,-framework,OpenCL -framework VideoToolbox -framework CoreFoundation -framework CoreMedia -framework CoreVideo -framework CoreServices 

So -- it does build, at least some places.

IF you can live with the default variant, that will get you started, at least. Something like this should work for you:

sudo port clean ffmpeg
sudo port -f uninstall ffmpeg
sudo port -v selfupdate
sudo port -v install ffmpeg
sudo port -v upgrade outdated

Then after you are back in business, try building ffmpeg again with your desired variant:

sudo port -v build ffmpeg +nonfree

and if it does build through, then deactive the existing one and install the one you want:

sudo port -f deactivate ffmpeg
sudo port -v install ffmpeg +nonfree

comment:8 Changed 4 years ago by MeNdMont (MeNdMont)

I'm on 10.15, does that make a difference?

comment:9 in reply to:  8 Changed 4 years ago by kencu (Ken)

Replying to MeNdMont:

I'm on 10.15, does that make a difference?

It might, I didn't try it on my 10.15 system yet -- but I suggest you try what I outlined, and see what happens for you.

comment:10 Changed 4 years ago by MeNdMont (MeNdMont)

This seemed to work, although now VLC is broken.

comment:11 Changed 4 years ago by kencu (Ken)

nonfree variant built as well?

comment:12 Changed 4 years ago by MeNdMont (MeNdMont)

Yes, the order of operations that worked was:

sudo port -f uninstall ffmpeg
sudo port clean ffmpeg
sudo port uninstall vlc
sudo port -v selfupdate
sudo port -v upgrade outdated
sudo port -v install ffmpeg
sudo port -v selfupdate
sudo port -v upgrade outdated
sudo port -f deactivate ffmpeg
sudo port -v install ffmpeg +nonfree

There might be an unnecessary update/upgrade step before install the +nonfree variant.

comment:13 Changed 4 years ago by kencu (Ken)

we do sometimes see these idiosyncratic events. Some combination of the cleanup and updates got it into working order.

I'm glad it is all how you want it/ need it now!

I'll close this tickets as it doen't seem there's a systemic macports issue to fix that we've found here. Reopen please if the next update of ffmpeg also fails for you tho.

K

comment:14 Changed 4 years ago by kencu (Ken)

Resolution: worksforme
Status: assignedclosed
Note: See TracTickets for help on using tickets.