#6620(build system:new): Build fails on Windows due to command line truncation
#6620: Build fails on Windows due to command line truncation -------------------------------------+------------------------------------- Reporter: rling | Type: defect Status: new | Priority: normal Component: build | Version: git- system | master Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Summary of the bug: The Windows command shell CMD.EXE has a 8192-character line length limit. For whatever reason, the bash shell provided by MinGW environment is subject to this limit. Building ffmpeg in MinGW bash outputs a command line that invokes ar.exe to create libavfilter.a (shown below) which exceeds 8192 characters and is truncated, causing an error opening the truncated input filename 'liba'. The problem only occurs with calls to ar.exe where hundreds of object files are given on the same command line. There is an easy fix for this defect, by using the '@file' syntax of ar.exe to load the list of object files from a text file, as described at: https://stackoverflow.com/questions/37504625/ar-on-msys2-shell-receives- truncated-paths-when-called-from-makefile How to reproduce: {{{ Rling@Nifta MINGW64 ~/Documents/Source/ffmpeg/src (master) $ bash --version GNU bash, version 4.3.42(5)-release (x86_64-pc-msys) Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Rling@Nifta MINGW64 ~/Documents/Source/ffmpeg/src (master) $ rm libavformat/libavformat.a Rling@Nifta MINGW64 ~/Documents/Source/ffmpeg/src (master) $ mingw32-make.exe --trace ffmpeg.exe Makefile:212: target 'libavutil/' does not exist mkdir -p libavutil/ Makefile:212: target 'libswscale/' does not exist mkdir -p libswscale/ Makefile:212: target 'libswresample/' does not exist mkdir -p libswresample/ Makefile:212: target 'libavcodec/' does not exist mkdir -p libavcodec/ Makefile:212: target 'libavformat/' does not exist mkdir -p libavformat/ Makefile:212: target 'libavfilter/' does not exist mkdir -p libavfilter/ Makefile:212: target 'libavdevice/' does not exist mkdir -p libavdevice/ Makefile:212: target 'libavfilter/x86/' does not exist mkdir -p libavfilter/x86/ ffbuild/library.mak:20: update target 'libavformat/libavformat.a' due to: libavformat/3dostr.o libavformat/4xm.o libavfo rmat/a64.o libavformat/aacdec.o libavformat/aadec.o libavformat/ac3dec.o libavformat/acm.o libavformat/act.o libavformat /adp.o libavformat/ads.o libavformat/adtsenc.o libavformat/adxdec.o libavformat/aea.o libavformat/afc.o libavformat/aiff dec.o libavformat/aiffenc.o libavformat/aixdec.o libavformat/allformats.o libavformat/amr.o libavformat/anm.o libavforma t/apc.o libavformat/ape.o libavformat/apetag.o libavformat/apngdec.o libavformat/apngenc.o libavformat/aqtitledec.o liba vformat/asf.o libavformat/asfcrypt.o libavformat/asfdec_f.o libavformat/asfdec_o.o libavformat/asfenc.o libavformat/assd ec.o libavformat/assenc.o libavformat/ast.o libavformat/astdec.o libavformat/astenc.o libavformat/async.o libavformat/au .o libavformat/audiointerleave.o libavformat/avc.o libavformat/avidec.o libavformat/avienc.o libavformat/avio.o libavfor mat/aviobuf.o libavformat/avlanguage.o libavformat/avr.o libavformat/avs.o libavformat/bethsoftvid.o libavformat/bfi.o l ibavformat/bink.o libavformat/bintext.o libavformat/bit.o libavformat/bmv.o libavformat/boadec.o libavformat/brstm.o lib avformat/c93.o libavformat/cache.o libavformat/caf.o libavformat/cafdec.o libavformat/cafenc.o libavformat/cavsvideodec. o libavformat/cdg.o libavformat/cdxl.o libavformat/cinedec.o libavformat/concat.o libavformat/concatdec.o libavformat/cr cenc.o libavformat/crypto.o libavformat/cutils.o libavformat/dashenc.o libavformat/data_uri.o libavformat/dauddec.o liba vformat/daudenc.o libavformat/dcstr.o libavformat/dfa.o libavformat/diracdec.o libavformat/dnxhddec.o libavformat/dsfdec .o libavformat/dsicin.o libavformat/dss.o libavformat/dtsdec.o libavformat/dtshddec.o libavformat/dump.o libavformat/dv. o libavformat/dvbsub.o libavformat/dvbtxt.o libavformat/dvenc.o libavformat/dxa.o libavformat/eacdata.o libavformat/elec tronicarts.o libavformat/epafdec.o libavformat/ffmdec.o libavformat/ffmenc.o libavformat/ffmetadec.o libavformat/ffmetae nc.o libavformat/fifo.o libavformat/file.o libavformat/filmstripdec.o libavformat/filmstripenc.o libavformat/flac_pictur e.o libavformat/flacdec.o libavformat/flacenc.o libavformat/flacenc_header.o libavformat/flic.o libavformat/flvdec.o lib avformat/flvenc.o libavformat/format.o libavformat/framecrcenc.o libavformat/framehash.o libavformat/frmdec.o libavforma t/fsb.o libavformat/ftp.o libavformat/g722.o libavformat/g723_1.o libavformat/g729dec.o libavformat/gdv.o libavformat/ge nh.o libavformat/gif.o libavformat/gifdec.o libavformat/gopher.o libavformat/gsmdec.o libavformat/gxf.o libavformat/gxfe nc.o libavformat/h261dec.o libavformat/h263dec.o libavformat/h264dec.o libavformat/hashenc.o libavformat/hdsenc.o libavf ormat/hevc.o libavformat/hevcdec.o libavformat/hls.o libavformat/hlsenc.o libavformat/hlsproto.o libavformat/hnm.o libav format/http.o libavformat/httpauth.o libavformat/icecast.o libavformat/icodec.o libavformat/icoenc.o libavformat/id3v1.o libavformat/id3v2.o libavformat/id3v2enc.o libavformat/idcin.o libavformat/idroqdec.o libavformat/idroqenc.o libavforma t/iff.o libavformat/ilbc.o libavformat/img2.o libavformat/img2_alias_pix.o libavformat/img2_brender_pix.o libavformat/im g2dec.o libavformat/img2enc.o libavformat/ingenientdec.o libavformat/ipmovie.o libavformat/ircam.o libavformat/ircamdec. o libavformat/ircamenc.o libavformat/isom.o libavformat/iss.o libavformat/iv8.o libavformat/ivfdec.o libavformat/ivfenc. o libavformat/jacosubdec.o libavformat/jacosubenc.o libavformat/jvdec.o libavformat/latmenc.o libavformat/lmlm4.o libavf ormat/loasdec.o libavformat/lrc.o libavformat/lrcdec.o libavformat/lrcenc.o libavformat/lvfdec.o libavformat/lxfdec.o li bavformat/m4vdec.o libavformat/matroska.o libavformat/matroskadec.o libavformat/matroskaenc.o libavformat/md5proto.o lib avformat/metadata.o libavformat/mgsts.o libavformat/microdvddec.o libavformat/microdvdenc.o libavformat/mj2kdec.o libavf ormat/mkvtimestamp_v2.o libavformat/mlpdec.o libavformat/mlvdec.o libavformat/mm.o libavformat/mmf.o libavformat/mms.o l ibavformat/mmsh.o libavformat/mmst.o libavformat/mov.o libavformat/mov_chan.o libavformat/movenc.o libavformat/movenccen c.o libavformat/movenchint.o libavformat/mp3dec.o libavformat/mp3enc.o libavformat/mpc.o libavformat/mpc8.o libavformat/ mpeg.o libavformat/mpegenc.o libavformat/mpegts.o libavformat/mpegtsenc.o libavformat/mpegvideodec.o libavformat/mpjpeg. o libavformat/mpjpegdec.o libavformat/mpl2dec.o libavformat/mpsubdec.o libavformat/msf.o libavformat/msnwc_tcp.o libavfo rmat/mtaf.o libavformat/mtv.o libavformat/musx.o libavformat/mux.o libavformat/mvdec.o libavformat/mvi.o libavformat/mxf .o libavformat/mxfdec.o libavformat/mxfenc.o libavformat/mxg.o libavformat/ncdec.o libavformat/network.o libavformat/nis tspheredec.o libavformat/nsvdec.o libavformat/nullenc.o libavformat/nut.o libavformat/nutdec.o libavformat/nutenc.o liba vformat/nuv.o libavformat/oggdec.o libavformat/oggenc.o libavformat/oggparsecelt.o libavformat/oggparsedaala.o libavform at/oggparsedirac.o libavformat/oggparseflac.o libavformat/oggparseogm.o libavformat/oggparseopus.o libavformat/oggparses keleton.o libavformat/oggparsespeex.o libavformat/oggparsetheora.o libavformat/oggparsevorbis.o libavformat/oggparsevp8. o libavformat/oma.o libavformat/omadec.o libavformat/omaenc.o libavformat/options.o libavformat/os_support.o libavformat /paf.o libavformat/pcm.o libavformat/pcmdec.o libavformat/pcmenc.o libavformat/pjsdec.o libavformat/pmpdec.o libavformat /prompeg.o libavformat/protocols.o libavformat/psxstr.o libavformat/pva.o libavformat/pvfdec.o libavformat/qcp.o libavfo rmat/qtpalette.o libavformat/r3d.o libavformat/rawdec.o libavformat/rawenc.o libavformat/rawutils.o libavformat/rawvideo dec.o libavformat/rdt.o libavformat/realtextdec.o libavformat/redspark.o libavformat/replaygain.o libavformat/riff.o lib avformat/riffdec.o libavformat/riffenc.o libavformat/rl2.o libavformat/rm.o libavformat/rmdec.o libavformat/rmenc.o liba vformat/rmsipr.o libavformat/rpl.o libavformat/rsd.o libavformat/rso.o libavformat/rsodec.o libavformat/rsoenc.o libavfo rmat/rtmphttp.o libavformat/rtmppkt.o libavformat/rtmpproto.o libavformat/rtp.o libavformat/rtpdec.o libavformat/rtpdec_ ac3.o libavformat/rtpdec_amr.o libavformat/rtpdec_asf.o libavformat/rtpdec_dv.o libavformat/rtpdec_g726.o libavformat/rt pdec_h261.o libavformat/rtpdec_h263.o libavformat/rtpdec_h263_rfc2190.o libavformat/rtpdec_h264.o libavformat/rtpdec_hev c.o libavformat/rtpdec_ilbc.o libavformat/rtpdec_jpeg.o libavformat/rtpdec_latm.o libavformat/rtpdec_mpa_robust.o libavf ormat/rtpdec_mpeg12.o libavformat/rtpdec_mpeg4.o libavformat/rtpdec_mpegts.o libavformat/rtpdec_qcelp.o libavformat/rtpd ec_qdm2.o libavformat/rtpdec_qt.o libavformat/rtpdec_rfc4175.o libavformat/rtpdec_svq3.o libavformat/rtpdec_vc2hq.o liba vformat/rtpdec_vp8.o libavformat/rtpdec_vp9.o libavformat/rtpdec_xiph.o libavformat/rtpenc.o libavformat/rtpenc_aac.o li bavformat/rtpenc_amr.o libavformat/rtpenc_chain.o libavformat/rtpenc_h261.o libavformat/rtpenc_h263.o libavformat/rtpenc _h263_rfc2190.o libavformat/rtpenc_h264_hevc.o libavformat/rtpenc_jpeg.o libavformat/rtpenc_latm.o libavformat/rtpenc_mp egts.o libavformat/rtpenc_mpv.o libavformat/rtpenc_vc2hq.o libavformat/rtpenc_vp8.o libavformat/rtpenc_vp9.o libavformat /rtpenc_xiph.o libavformat/rtpproto.o libavformat/rtsp.o libavformat/rtspdec.o libavformat/rtspenc.o libavformat/s337m.o libavformat/samidec.o libavformat/sapdec.o libavformat/sapenc.o libavformat/sauce.o libavformat/sbgdec.o libavformat/sc cdec.o libavformat/sccenc.o libavformat/sdp.o libavformat/sdr2.o libavformat/sdsdec.o libavformat/sdxdec.o libavformat/s egafilm.o libavformat/segment.o libavformat/shortendec.o libavformat/sierravmd.o libavformat/siff.o libavformat/smacker. o libavformat/smjpeg.o libavformat/smjpegdec.o libavformat/smjpegenc.o libavformat/smoothstreamingenc.o libavformat/smus h.o libavformat/sol.o libavformat/soxdec.o libavformat/soxenc.o libavformat/spdif.o libavformat/spdifdec.o libavformat/s pdifenc.o libavformat/srtdec.o libavformat/srtenc.o libavformat/srtp.o libavformat/srtpproto.o libavformat/stldec.o liba vformat/subfile.o libavformat/subtitles.o libavformat/subviewer1dec.o libavformat/subviewerdec.o libavformat/supdec.o li bavformat/svag.o libavformat/swf.o libavformat/swfdec.o libavformat/swfenc.o libavformat/takdec.o libavformat/tcp.o liba vformat/tedcaptionsdec.o libavformat/tee.o libavformat/tee_common.o libavformat/teeproto.o libavformat/thp.o libavformat /tiertexseq.o libavformat/tls.o libavformat/tls_schannel.o libavformat/tmv.o libavformat/tta.o libavformat/ttaenc.o liba vformat/tty.o libavformat/txd.o libavformat/udp.o libavformat/uncodedframecrcenc.o libavformat/url.o libavformat/urldeco de.o libavformat/utils.o libavformat/v210.o libavformat/vag.o libavformat/vc1dec.o libavformat/vc1test.o libavformat/vc1 testenc.o libavformat/vivo.o libavformat/voc.o libavformat/voc_packet.o libavformat/vocdec.o libavformat/vocenc.o libavf ormat/vorbiscomment.o libavformat/vpcc.o libavformat/vpk.o libavformat/vplayerdec.o libavformat/vqf.o libavformat/w64.o libavformat/wavdec.o libavformat/wavenc.o libavformat/wc3movie.o libavformat/webm_chunk.o libavformat/webmdashenc.o liba vformat/webpenc.o libavformat/webvttdec.o libavformat/webvttenc.o libavformat/westwood_aud.o libavformat/westwood_vqa.o libavformat/wsddec.o libavformat/wtv_common.o libavformat/wtvdec.o libavformat/wtvenc.o libavformat/wv.o libavformat/wvd ec.o libavformat/wvedec.o libavformat/wvenc.o libavformat/xa.o libavformat/xmv.o libavformat/xvag.o libavformat/xwma.o l ibavformat/yop.o libavformat/yuv4mpegdec.o libavformat/yuv4mpegenc.o rm -f libavformat/libavformat.a printf "AR\t%s\n" libavformat/libavformat.a; ar rcD libavformat/libavformat.a libavformat/3dostr.o libavformat/4xm.o lib avformat/a64.o libavformat/aacdec.o libavformat/aadec.o libavformat/ac3dec.o libavformat/acm.o libavformat/act.o libavfo rmat/adp.o libavformat/ads.o libavformat/adtsenc.o libavformat/adxdec.o libavformat/aea.o libavformat/afc.o libavformat/ aiffdec.o libavformat/aiffenc.o libavformat/aixdec.o libavformat/allformats.o libavformat/amr.o libavformat/anm.o libavf ormat/apc.o libavformat/ape.o libavformat/apetag.o libavformat/apngdec.o libavformat/apngenc.o libavformat/aqtitledec.o libavformat/asf.o libavformat/asfcrypt.o libavformat/asfdec_f.o libavformat/asfdec_o.o libavformat/asfenc.o libavformat/ assdec.o libavformat/assenc.o libavformat/ast.o libavformat/astdec.o libavformat/astenc.o libavformat/async.o libavforma t/au.o libavformat/audiointerleave.o libavformat/avc.o libavformat/avidec.o libavformat/avienc.o libavformat/avio.o liba vformat/aviobuf.o libavformat/avlanguage.o libavformat/avr.o libavformat/avs.o libavformat/bethsoftvid.o libavformat/bfi .o libavformat/bink.o libavformat/bintext.o libavformat/bit.o libavformat/bmv.o libavformat/boadec.o libavformat/brstm.o libavformat/c93.o libavformat/cache.o libavformat/caf.o libavformat/cafdec.o libavformat/cafenc.o libavformat/cavsvideo dec.o libavformat/cdg.o libavformat/cdxl.o libavformat/cinedec.o libavformat/concat.o libavformat/concatdec.o libavforma t/crcenc.o libavformat/crypto.o libavformat/cutils.o libavformat/dashenc.o libavformat/data_uri.o libavformat/dauddec.o libavformat/daudenc.o libavformat/dcstr.o libavformat/dfa.o libavformat/diracdec.o libavformat/dnxhddec.o libavformat/ds fdec.o libavformat/dsicin.o libavformat/dss.o libavformat/dtsdec.o libavformat/dtshddec.o libavformat/dump.o libavformat /dv.o libavformat/dvbsub.o libavformat/dvbtxt.o libavformat/dvenc.o libavformat/dxa.o libavformat/eacdata.o libavformat/ electronicarts.o libavformat/epafdec.o libavformat/ffmdec.o libavformat/ffmenc.o libavformat/ffmetadec.o libavformat/ffm etaenc.o libavformat/fifo.o libavformat/file.o libavformat/filmstripdec.o libavformat/filmstripenc.o libavformat/flac_pi cture.o libavformat/flacdec.o libavformat/flacenc.o libavformat/flacenc_header.o libavformat/flic.o libavformat/flvdec.o libavformat/flvenc.o libavformat/format.o libavformat/framecrcenc.o libavformat/framehash.o libavformat/frmdec.o libavf ormat/fsb.o libavformat/ftp.o libavformat/g722.o libavformat/g723_1.o libavformat/g729dec.o libavformat/gdv.o libavforma t/genh.o libavformat/gif.o libavformat/gifdec.o libavformat/gopher.o libavformat/gsmdec.o libavformat/gxf.o libavformat/ gxfenc.o libavformat/h261dec.o libavformat/h263dec.o libavformat/h264dec.o libavformat/hashenc.o libavformat/hdsenc.o li bavformat/hevc.o libavformat/hevcdec.o libavformat/hls.o libavformat/hlsenc.o libavformat/hlsproto.o libavformat/hnm.o l ibavformat/http.o libavformat/httpauth.o libavformat/icecast.o libavformat/icodec.o libavformat/icoenc.o libavformat/id3 v1.o libavformat/id3v2.o libavformat/id3v2enc.o libavformat/idcin.o libavformat/idroqdec.o libavformat/idroqenc.o libavf ormat/iff.o libavformat/ilbc.o libavformat/img2.o libavformat/img2_alias_pix.o libavformat/img2_brender_pix.o libavforma t/img2dec.o libavformat/img2enc.o libavformat/ingenientdec.o libavformat/ipmovie.o libavformat/ircam.o libavformat/ircam dec.o libavformat/ircamenc.o libavformat/isom.o libavformat/iss.o libavformat/iv8.o libavformat/ivfdec.o libavformat/ivf enc.o libavformat/jacosubdec.o libavformat/jacosubenc.o libavformat/jvdec.o libavformat/latmenc.o libavformat/lmlm4.o li bavformat/loasdec.o libavformat/lrc.o libavformat/lrcdec.o libavformat/lrcenc.o libavformat/lvfdec.o libavformat/lxfdec. o libavformat/m4vdec.o libavformat/matroska.o libavformat/matroskadec.o libavformat/matroskaenc.o libavformat/md5proto.o libavformat/metadata.o libavformat/mgsts.o libavformat/microdvddec.o libavformat/microdvdenc.o libavformat/mj2kdec.o li bavformat/mkvtimestamp_v2.o libavformat/mlpdec.o libavformat/mlvdec.o libavformat/mm.o libavformat/mmf.o libavformat/mms .o libavformat/mmsh.o libavformat/mmst.o libavformat/mov.o libavformat/mov_chan.o libavformat/movenc.o libavformat/moven ccenc.o libavformat/movenchint.o libavformat/mp3dec.o libavformat/mp3enc.o libavformat/mpc.o libavformat/mpc8.o libavfor mat/mpeg.o libavformat/mpegenc.o libavformat/mpegts.o libavformat/mpegtsenc.o libavformat/mpegvideodec.o libavformat/mpj peg.o libavformat/mpjpegdec.o libavformat/mpl2dec.o libavformat/mpsubdec.o libavformat/msf.o libavformat/msnwc_tcp.o lib avformat/mtaf.o libavformat/mtv.o libavformat/musx.o libavformat/mux.o libavformat/mvdec.o libavformat/mvi.o libavformat /mxf.o libavformat/mxfdec.o libavformat/mxfenc.o libavformat/mxg.o libavformat/ncdec.o libavformat/network.o libavformat /nistspheredec.o libavformat/nsvdec.o libavformat/nullenc.o libavformat/nut.o libavformat/nutdec.o libavformat/nutenc.o libavformat/nuv.o libavformat/oggdec.o libavformat/oggenc.o libavformat/oggparsecelt.o libavformat/oggparsedaala.o libav format/oggparsedirac.o libavformat/oggparseflac.o libavformat/oggparseogm.o libavformat/oggparseopus.o libavformat/oggpa rseskeleton.o libavformat/oggparsespeex.o libavformat/oggparsetheora.o libavformat/oggparsevorbis.o libavformat/oggparse vp8.o libavformat/oma.o libavformat/omadec.o libavformat/omaenc.o libavformat/options.o libavformat/os_support.o libavfo rmat/paf.o libavformat/pcm.o libavformat/pcmdec.o libavformat/pcmenc.o libavformat/pjsdec.o libavformat/pmpdec.o libavfo rmat/prompeg.o libavformat/protocols.o libavformat/psxstr.o libavformat/pva.o libavformat/pvfdec.o libavformat/qcp.o lib avformat/qtpalette.o libavformat/r3d.o libavformat/rawdec.o libavformat/rawenc.o libavformat/rawutils.o libavformat/rawv ideodec.o libavformat/rdt.o libavformat/realtextdec.o libavformat/redspark.o libavformat/replaygain.o libavformat/riff.o libavformat/riffdec.o libavformat/riffenc.o libavformat/rl2.o libavformat/rm.o libavformat/rmdec.o libavformat/rmenc.o libavformat/rmsipr.o libavformat/rpl.o libavformat/rsd.o libavformat/rso.o libavformat/rsodec.o libavformat/rsoenc.o lib avformat/rtmphttp.o libavformat/rtmppkt.o libavformat/rtmpproto.o libavformat/rtp.o libavformat/rtpdec.o libavformat/rtp dec_ac3.o libavformat/rtpdec_amr.o libavformat/rtpdec_asf.o libavformat/rtpdec_dv.o libavformat/rtpdec_g726.o libavforma t/rtpdec_h261.o libavformat/rtpdec_h263.o libavformat/rtpdec_h263_rfc2190.o libavformat/rtpdec_h264.o libavformat/rtpdec _hevc.o libavformat/rtpdec_ilbc.o libavformat/rtpdec_jpeg.o libavformat/rtpdec_latm.o libavformat/rtpdec_mpa_robust.o li bavformat/rtpdec_mpeg12.o libavformat/rtpdec_mpeg4.o libavformat/rtpdec_mpegts.o libavformat/rtpdec_qcelp.o libavformat/ rtpdec_qdm2.o libavformat/rtpdec_qt.o libavformat/rtpdec_rfc4175.o libavformat/rtpdec_svq3.o libavformat/rtpdec_vc2hq.o libavformat/rtpdec_vp8.o libavformat/rtpdec_vp9.o libavformat/rtpdec_xiph.o libavformat/rtpenc.o libavformat/rtpenc_aac. o libavformat/rtpenc_amr.o libavformat/rtpenc_chain.o libavformat/rtpenc_h261.o libavformat/rtpenc_h263.o libavformat/rt penc_h263_rfc2190.o libavformat/rtpenc_h264_hevc.o libavformat/rtpenc_jpeg.o libavformat/rtpenc_latm.o libavformat/rtpen c_mpegts.o libavformat/rtpenc_mpv.o libavformat/rtpenc_vc2hq.o libavformat/rtpenc_vp8.o libavformat/rtpenc_vp9.o libavfo rmat/rtpenc_xiph.o libavformat/rtpproto.o libavformat/rtsp.o libavformat/rtspdec.o libavformat/rtspenc.o libavformat/s33 7m.o libavformat/samidec.o libavformat/sapdec.o libavformat/sapenc.o libavformat/sauce.o libavformat/sbgdec.o libavforma t/sccdec.o libavformat/sccenc.o libavformat/sdp.o libavformat/sdr2.o libavformat/sdsdec.o libavformat/sdxdec.o libavform at/segafilm.o libavformat/segment.o libavformat/shortendec.o libavformat/sierravmd.o libavformat/siff.o libavformat/smac ker.o libavformat/smjpeg.o libavformat/smjpegdec.o libavformat/smjpegenc.o libavformat/smoothstreamingenc.o libavformat/ smush.o libavformat/sol.o libavformat/soxdec.o libavformat/soxenc.o libavformat/spdif.o libavformat/spdifdec.o libavform at/spdifenc.o libavformat/srtdec.o libavformat/srtenc.o libavformat/srtp.o libavformat/srtpproto.o libavformat/stldec.o libavformat/subfile.o libavformat/subtitles.o libavformat/subviewer1dec.o libavformat/subviewerdec.o libavformat/supdec. o libavformat/svag.o libavformat/swf.o libavformat/swfdec.o libavformat/swfenc.o libavformat/takdec.o libavformat/tcp.o libavformat/tedcaptionsdec.o libavformat/tee.o libavformat/tee_common.o libavformat/teeproto.o libavformat/thp.o libavfo rmat/tiertexseq.o libavformat/tls.o libavformat/tls_schannel.o libavformat/tmv.o libavformat/tta.o libavformat/ttaenc.o libavformat/tty.o libavformat/txd.o libavformat/udp.o libavformat/uncodedframecrcenc.o libavformat/url.o libavformat/url decode.o libavformat/utils.o libavformat/v210.o libavformat/vag.o libavformat/vc1dec.o libavformat/vc1test.o libavformat /vc1testenc.o libavformat/vivo.o libavformat/voc.o libavformat/voc_packet.o libavformat/vocdec.o libavformat/vocenc.o li bavformat/vorbiscomment.o libavformat/vpcc.o libavformat/vpk.o libavformat/vplayerdec.o libavformat/vqf.o libavformat/w6 4.o libavformat/wavdec.o libavformat/wavenc.o libavformat/wc3movie.o libavformat/webm_chunk.o libavformat/webmdashenc.o libavformat/webpenc.o libavformat/webvttdec.o libavformat/webvttenc.o libavformat/westwood_aud.o libavformat/westwood_vq a.o libavformat/wsddec.o libavformat/wtv_common.o libavformat/wtvdec.o libavformat/wtvenc.o libavformat/wv.o libavformat /wvdec.o libavformat/wvedec.o libavformat/wvenc.o libavformat/xa.o libavformat/xmv.o libavformat/xvag.o libavformat/xwma .o libavformat/yop.o libavformat/yuv4mpegdec.o libavformat/yuv4mpegenc.o AR libavformat/libavformat.a C:\mingw\bin\ar.exe: liba: No such file or directory ffbuild/library.mak:20: recipe for target 'libavformat/libavformat.a' failed mingw32-make: *** [libavformat/libavformat.a] Error 1 }}} Proposed fix I worked around this defect by changing ffbuild/library.mak as follows. Before: {{{ $(SUBDIR)$(LIBNAME): $(OBJS) $(RM) $@ $(AR) $(ARFLAGS) $(AR_O) $^ $(RANLIB) $@ }}} After: {{{ $(SUBDIR)$(LIBNAME): $(OBJS) $(RM) $@ $(file >objs.txt,$^) cat objs.txt $(AR) $(ARFLAGS) $(AR_O) @objs.txt $(RANLIB) $@ }}} cat objs.txt is of course optional. -- Ticket URL: <https://trac.ffmpeg.org/ticket/6620> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#6620: Build fails on Windows due to command line truncation -------------------------------------+------------------------------------- Reporter: rling | Owner: Type: defect | Status: new Priority: normal | Component: build | system Version: git-master | Resolution: Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by Balling): Is this a bad idea or what? -- Ticket URL: <https://trac.ffmpeg.org/ticket/6620#comment:1> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#6620: Build fails on Windows due to command line truncation -------------------------------------+------------------------------------- Reporter: rling | Owner: Type: defect | Status: new Priority: normal | Component: build | system Version: git-master | Resolution: Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by cehoyos): Given that this works fine on wsl (where configure runs much faster) I don't think a change is necessary. In any case, a patch made with `git format-patch` has to be posted on the FFmpeg development mailing list. -- Ticket URL: <https://trac.ffmpeg.org/ticket/6620#comment:2> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#6620: Build fails on Windows due to command line truncation -------------------------------------+------------------------------------- Reporter: rling | Owner: (none) Type: defect | Status: new Priority: normal | Component: build | system Version: git-master | Resolution: Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by lifegpc): Have same problems on MingW64. -- Ticket URL: <https://trac.ffmpeg.org/ticket/6620#comment:3> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#6620: Build fails on Windows due to command line truncation -------------------------------------+------------------------------------- Reporter: rling | Owner: (none) Type: defect | Status: new Priority: normal | Component: build | system Version: git-master | Resolution: Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by lifegpc): After I remove make version3 in my top PATH path. The problem solved. Seems already fixed in make version 4. -- Ticket URL: <https://trac.ffmpeg.org/ticket/6620#comment:4> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#6620: Build fails on Windows due to command line truncation -------------------------------------+------------------------------------- Reporter: rling | Owner: (none) Type: defect | Status: new Priority: normal | Component: build | system Version: git-master | Resolution: Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by Balling): Last GNU Make is version 4.3. It is fixed there, right? So closing this? -- Ticket URL: <https://trac.ffmpeg.org/ticket/6620#comment:5> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#6620: Build fails on Windows due to command line truncation -------------------------------------+------------------------------------- Reporter: rling | Owner: (none) Type: defect | Status: new Priority: normal | Component: build | system Version: git-master | Resolution: Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by rokups): Oddly enough vcpkg does use GNU Make 4.3 and yet i am impacted by this issue. This fixes build for me. For a bit of context - i am building ffmpeg with emscripten and only this compiler produces this issue. Windows/linux builds surprisingly are fine. -- Ticket URL: <https://trac.ffmpeg.org/ticket/6620#comment:6> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
participants (1)
-
FFmpeg