Opened 6 years ago

Closed 6 years ago

#6740 closed defect (fixed)

libavfilter.6.dylib link failure with missing fribidi symbols

Reported by: Hanspeter Niederstrasser Owned by:
Priority: important Component: build system
Version: git-master Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

./configure --prefix=/usr/local/ffmpeg-clang --enable-autodetect --enable-gpl --enable-version3 --disable-static --enable-shared --enable-pthreads --disable-indev=jack --enable-bzlib --enable-chromaprint --enable-frei0r --enable-gcrypt --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcelt --enable-libcdio --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libkvazaar --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-librtmp --enable-librubberband --disable-libsmbclient --enable-libsnappy --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-opencl --enable-opengl --enable-sdl2 --enable-videotoolbox --enable-zlib --cc=clang --extra-ldflags='-Wl,-dead_strip_dylibs -L/sw/lib' --extra-cflags=-I/sw/include

which leads to this failure when linking libavfilter.dylib

clang -dynamiclib -Wl,-single_module -Wl,-install_name,/usr/local/ffmpeg-clang/lib/libavfilter.6.dylib,-current_version,6.108.100,-compatibility_version,6 -Wl,-exported_symbols_list,libavfilter/libavfilter.ver -Llibavcodec -Llibavdevice -Llibavfilter -Llibavformat -Llibavresample -Llibavutil -Llibpostproc -Llibswscale -Llibswresample -Wl,-dead_strip_dylibs -L/sw/lib  -Wl,-dynamic,-search_paths_first -Qunused-arguments  -o libavfilter/libavfilter.6.dylib libavfilter/aeval.o libavfilter/af_acopy.o libavfilter/af_acrusher.o libavfilter/af_adelay.o libavfilter/af_aecho.o libavfilter/af_aemphasis.o libavfilter/af_afade.o libavfilter/af_afftfilt.o libavfilter/af_afir.o libavfilter/af_aformat.o libavfilter/af_agate.o libavfilter/af_alimiter.o libavfilter/af_amerge.o libavfilter/af_amix.o libavfilter/af_anequalizer.o libavfilter/af_anull.o libavfilter/af_apad.o libavfilter/af_aphaser.o libavfilter/af_apulsator.o libavfilter/af_aresample.o libavfilter/af_asetnsamples.o libavfilter/af_asetrate.o libavfilter/af_ashowinfo.o libavfilter/af_astats.o libavfilter/af_atempo.o libavfilter/af_biquads.o libavfilter/af_bs2b.o libavfilter/af_channelmap.o libavfilter/af_channelsplit.o libavfilter/af_chorus.o libavfilter/af_compand.o libavfilter/af_compensationdelay.o libavfilter/af_crossfeed.o libavfilter/af_crystalizer.o libavfilter/af_dcshift.o libavfilter/af_dynaudnorm.o libavfilter/af_earwax.o libavfilter/af_extrastereo.o libavfilter/af_firequalizer.o libavfilter/af_flanger.o libavfilter/af_haas.o libavfilter/af_hdcd.o libavfilter/af_headphone.o libavfilter/af_join.o libavfilter/af_loudnorm.o libavfilter/af_pan.o libavfilter/af_replaygain.o libavfilter/af_rubberband.o libavfilter/af_sidechaincompress.o libavfilter/af_silencedetect.o libavfilter/af_silenceremove.o libavfilter/af_stereotools.o libavfilter/af_stereowiden.o libavfilter/af_superequalizer.o libavfilter/af_surround.o libavfilter/af_tremolo.o libavfilter/af_vibrato.o libavfilter/af_volume.o libavfilter/af_volumedetect.o libavfilter/allfilters.o libavfilter/asink_anullsink.o libavfilter/asrc_anoisesrc.o libavfilter/asrc_anullsrc.o libavfilter/asrc_sine.o libavfilter/audio.o libavfilter/avf_abitscope.o libavfilter/avf_ahistogram.o libavfilter/avf_aphasemeter.o libavfilter/avf_avectorscope.o libavfilter/avf_concat.o libavfilter/avf_showcqt.o libavfilter/avf_showfreqs.o libavfilter/avf_showspectrum.o libavfilter/avf_showvolume.o libavfilter/avf_showwaves.o libavfilter/avfilter.o libavfilter/avfiltergraph.o libavfilter/bbox.o libavfilter/buffersink.o libavfilter/buffersrc.o libavfilter/colorspacedsp.o libavfilter/deshake_opencl.o libavfilter/drawutils.o libavfilter/ebur128.o libavfilter/f_bench.o libavfilter/f_drawgraph.o libavfilter/f_ebur128.o libavfilter/f_interleave.o libavfilter/f_loop.o libavfilter/f_metadata.o libavfilter/f_perms.o libavfilter/f_realtime.o libavfilter/f_reverse.o libavfilter/f_select.o libavfilter/f_sendcmd.o libavfilter/f_sidedata.o libavfilter/f_streamselect.o libavfilter/f_zmq.o libavfilter/fifo.o libavfilter/formats.o libavfilter/framepool.o libavfilter/framequeue.o libavfilter/framesync.o libavfilter/generate_wave_table.o libavfilter/graphdump.o libavfilter/graphparser.o libavfilter/lavfutils.o libavfilter/log2_tab.o libavfilter/lswsutils.o libavfilter/motion_estimation.o libavfilter/opencl_allkernels.o libavfilter/pthread.o libavfilter/scale.o libavfilter/setpts.o libavfilter/settb.o libavfilter/split.o libavfilter/src_movie.o libavfilter/transform.o libavfilter/trim.o libavfilter/unsharp_opencl.o libavfilter/vaf_spectrumsynth.o libavfilter/vf_alphamerge.o libavfilter/vf_aspect.o libavfilter/vf_atadenoise.o libavfilter/vf_avgblur.o libavfilter/vf_bbox.o libavfilter/vf_bitplanenoise.o libavfilter/vf_blackdetect.o libavfilter/vf_blackframe.o libavfilter/vf_blend.o libavfilter/vf_boxblur.o libavfilter/vf_bwdif.o libavfilter/vf_chromakey.o libavfilter/vf_ciescope.o libavfilter/vf_codecview.o libavfilter/vf_colorbalance.o libavfilter/vf_colorchannelmixer.o libavfilter/vf_colorkey.o libavfilter/vf_colorlevels.o libavfilter/vf_colormatrix.o libavfilter/vf_colorspace.o libavfilter/vf_convolution.o libavfilter/vf_convolve.o libavfilter/vf_copy.o libavfilter/vf_coreimage.o libavfilter/vf_cover_rect.o libavfilter/vf_crop.o libavfilter/vf_cropdetect.o libavfilter/vf_curves.o libavfilter/vf_datascope.o libavfilter/vf_dctdnoiz.o libavfilter/vf_deband.o libavfilter/vf_decimate.o libavfilter/vf_deflicker.o libavfilter/vf_dejudder.o libavfilter/vf_delogo.o libavfilter/vf_deshake.o libavfilter/vf_despill.o libavfilter/vf_detelecine.o libavfilter/vf_displace.o libavfilter/vf_drawbox.o libavfilter/vf_drawtext.o libavfilter/vf_edgedetect.o libavfilter/vf_elbg.o libavfilter/vf_eq.o libavfilter/vf_extractplanes.o libavfilter/vf_fade.o libavfilter/vf_fftfilt.o libavfilter/vf_field.o libavfilter/vf_fieldhint.o libavfilter/vf_fieldmatch.o libavfilter/vf_fieldorder.o libavfilter/vf_find_rect.o libavfilter/vf_floodfill.o libavfilter/vf_format.o libavfilter/vf_fps.o libavfilter/vf_framepack.o libavfilter/vf_framerate.o libavfilter/vf_framestep.o libavfilter/vf_frei0r.o libavfilter/vf_fspp.o libavfilter/vf_gblur.o libavfilter/vf_geq.o libavfilter/vf_gradfun.o libavfilter/vf_hflip.o libavfilter/vf_histeq.o libavfilter/vf_histogram.o libavfilter/vf_hqdn3d.o libavfilter/vf_hqx.o libavfilter/vf_hue.o libavfilter/vf_hwdownload.o libavfilter/vf_hwmap.o libavfilter/vf_hwupload.o libavfilter/vf_hysteresis.o libavfilter/vf_idet.o libavfilter/vf_il.o libavfilter/vf_interlace.o libavfilter/vf_kerndeint.o libavfilter/vf_lenscorrection.o libavfilter/vf_limiter.o libavfilter/vf_lumakey.o libavfilter/vf_lut.o libavfilter/vf_lut2.o libavfilter/vf_lut3d.o libavfilter/vf_maskedclamp.o libavfilter/vf_maskedmerge.o libavfilter/vf_mcdeint.o libavfilter/vf_mergeplanes.o libavfilter/vf_mestimate.o libavfilter/vf_midequalizer.o libavfilter/vf_minterpolate.o libavfilter/vf_mpdecimate.o libavfilter/vf_neighbor.o libavfilter/vf_nlmeans.o libavfilter/vf_nnedi.o libavfilter/vf_noise.o libavfilter/vf_null.o libavfilter/vf_overlay.o libavfilter/vf_owdenoise.o libavfilter/vf_pad.o libavfilter/vf_palettegen.o libavfilter/vf_paletteuse.o libavfilter/vf_perspective.o libavfilter/vf_phase.o libavfilter/vf_pixdesctest.o libavfilter/vf_pp.o libavfilter/vf_pp7.o libavfilter/vf_premultiply.o libavfilter/vf_pseudocolor.o libavfilter/vf_psnr.o libavfilter/vf_pullup.o libavfilter/vf_qp.o libavfilter/vf_random.o libavfilter/vf_readeia608.o libavfilter/vf_readvitc.o libavfilter/vf_remap.o libavfilter/vf_removegrain.o libavfilter/vf_removelogo.o libavfilter/vf_repeatfields.o libavfilter/vf_rotate.o libavfilter/vf_sab.o libavfilter/vf_scale.o libavfilter/vf_selectivecolor.o libavfilter/vf_separatefields.o libavfilter/vf_setfield.o libavfilter/vf_showinfo.o libavfilter/vf_showpalette.o libavfilter/vf_shuffleframes.o libavfilter/vf_shuffleplanes.o libavfilter/vf_signalstats.o libavfilter/vf_signature.o libavfilter/vf_smartblur.o libavfilter/vf_spp.o libavfilter/vf_ssim.o libavfilter/vf_stack.o libavfilter/vf_stereo3d.o libavfilter/vf_subtitles.o libavfilter/vf_super2xsai.o libavfilter/vf_swaprect.o libavfilter/vf_swapuv.o libavfilter/vf_telecine.o libavfilter/vf_threshold.o libavfilter/vf_thumbnail.o libavfilter/vf_tile.o libavfilter/vf_tinterlace.o libavfilter/vf_tonemap.o libavfilter/vf_transpose.o libavfilter/vf_unsharp.o libavfilter/vf_uspp.o libavfilter/vf_vaguedenoiser.o libavfilter/vf_vectorscope.o libavfilter/vf_vflip.o libavfilter/vf_vidstabdetect.o libavfilter/vf_vidstabtransform.o libavfilter/vf_vignette.o libavfilter/vf_vmafmotion.o libavfilter/vf_w3fdif.o libavfilter/vf_waveform.o libavfilter/vf_weave.o libavfilter/vf_xbr.o libavfilter/vf_yadif.o libavfilter/vf_zoompan.o libavfilter/video.o libavfilter/vidstabutils.o libavfilter/vsink_nullsink.o libavfilter/vsrc_cellauto.o libavfilter/vsrc_life.o libavfilter/vsrc_mandelbrot.o libavfilter/vsrc_mptestsrc.o libavfilter/vsrc_testsrc.o libavfilter/x86/af_afir.o libavfilter/x86/af_afir_init.o libavfilter/x86/af_volume.o libavfilter/x86/af_volume_init.o libavfilter/x86/avf_showcqt.o libavfilter/x86/avf_showcqt_init.o libavfilter/x86/colorspacedsp.o libavfilter/x86/colorspacedsp_init.o libavfilter/x86/vf_blend.o libavfilter/x86/vf_blend_init.o libavfilter/x86/vf_bwdif.o libavfilter/x86/vf_bwdif_init.o libavfilter/x86/vf_eq.o libavfilter/x86/vf_fspp.o libavfilter/x86/vf_fspp_init.o libavfilter/x86/vf_gradfun.o libavfilter/x86/vf_gradfun_init.o libavfilter/x86/vf_hqdn3d.o libavfilter/x86/vf_hqdn3d_init.o libavfilter/x86/vf_idet.o libavfilter/x86/vf_idet_init.o libavfilter/x86/vf_interlace.o libavfilter/x86/vf_interlace_init.o libavfilter/x86/vf_limiter.o libavfilter/x86/vf_limiter_init.o libavfilter/x86/vf_maskedmerge.o libavfilter/x86/vf_maskedmerge_init.o libavfilter/x86/vf_noise.o libavfilter/x86/vf_pp7.o libavfilter/x86/vf_pp7_init.o libavfilter/x86/vf_psnr.o libavfilter/x86/vf_psnr_init.o libavfilter/x86/vf_pullup.o libavfilter/x86/vf_pullup_init.o libavfilter/x86/vf_removegrain.o libavfilter/x86/vf_removegrain_init.o libavfilter/x86/vf_spp.o libavfilter/x86/vf_ssim.o libavfilter/x86/vf_ssim_init.o libavfilter/x86/vf_stereo3d.o libavfilter/x86/vf_stereo3d_init.o libavfilter/x86/vf_tinterlace_init.o libavfilter/x86/vf_w3fdif.o libavfilter/x86/vf_w3fdif_init.o libavfilter/x86/vf_yadif.o libavfilter/x86/vf_yadif_init.o libavfilter/x86/yadif-10.o libavfilter/x86/yadif-16.o -lswscale -lpostproc -lavformat -lavcodec -lswresample -lavutil -framework OpenGL -framework OpenGL -pthread -lm -L/sw/lib -lbs2b -L/sw/lib -lrubberband -lstdc++ -L/sw/lib -lass -Wl,-framework,OpenCL -L/sw/lib -lvidstab -L/sw/lib -lzmq -framework CoreImage -framework AppKit -L/sw/lib -lfontconfig -L/sw/lib -lfreetype -lm -lm -lm -lbz2 -L/sw/lib -lgme -L/sw/lib -lmodplug -L/sw/lib -lopenmpt -lstdc++ -L/sw/lib -lgcrypt -lgpg-error -lchromaprint -L/sw/lib -lbluray -lz -Wl,-framework,CoreFoundation -Wl,-framework,Security -L/sw/lib -lrtmp -L/sw/lib -lvpx -lm -L/sw/lib -lvpx -lm -L/sw/lib -lvpx -lm -L/sw/lib -lvpx -lm -L/sw/lib/webp7 -lwebpmux -lwebp -liconv -lm -llzma -lcelt0 -lopencore-amrwb -L/sw/lib -lzvbi -lm -lsnappy -lstdc++ -lz -framework AudioToolbox -lgsm -lmp3lame -lopencore-amrnb -lopenjp2 -L/sw/lib -lopus -L/sw/lib/libspeex1/lib -lspeex -ltheoraenc -ltheoradec -logg -ltwolame -L/sw/lib -lvorbis -L/sw/lib -lvorbisenc -lwavpack -L/sw/lib/webp7 -lwebp -L/sw/lib -lx264 -lpthread -L/sw/lib -lx265 -lxvidcore -pthread -L/sw/lib -lkvazaar -framework VideoToolbox -framework CoreFoundation -framework CoreMedia -framework CoreVideo -framework CoreServices -lm -pthread -lm -Wl,-framework,OpenCL -framework VideoToolbox -framework CoreFoundation -framework CoreVideo -framework CoreMedia 
ld: warning: directory not found for option '-Llibavresample'
Undefined symbols for architecture x86_64:
  "_fribidi_charset_to_unicode", referenced from:
      _shape_text in vf_drawtext.o
  "_fribidi_get_bidi_types", referenced from:
      _shape_text in vf_drawtext.o
  "_fribidi_get_joining_types", referenced from:
      _shape_text in vf_drawtext.o
  "_fribidi_get_par_embedding_levels", referenced from:
      _shape_text in vf_drawtext.o
  "_fribidi_join_arabic", referenced from:
      _shape_text in vf_drawtext.o
  "_fribidi_reorder_line", referenced from:
      _shape_text in vf_drawtext.o
  "_fribidi_shape", referenced from:
      _shape_text in vf_drawtext.o
  "_fribidi_unicode_to_charset", referenced from:
      _shape_text in vf_drawtext.o
ld: symbol(s) not found for architecture x86_64

It's missing -lfribidi even though that's enabled in configure.

This is fixed by adding libfribidi to 'drawtext_filter_suggest' in configure.

Change History (1)

comment:1 by James, 6 years ago

Priority: normalimportant
Resolution: fixed
Status: newclosed
Version: unspecifiedgit-master

Fixed that way. Thanks for the report.

Note: See TracTickets for help on using tickets.