Opened 5 years ago

Closed 5 years ago

Last modified 4 years ago

#2823 closed defect (fixed)

Building ffmpeg failed

Reported by: pradeepvr Owned by:
Priority: critical Component: avcodec
Version: git-master Keywords: regression
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Am trying to build ffmpeg checked out from git on July-30 on ubuntu 10.04.

Steps to reproduce:
Step 1 : Run configure command(./configure).
Step 2 : Run make command(make).

Found the below output in console and build failed.

libavcodec/avpacket.c:262: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
libavcodec/avpacket.c:263: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
libavcodec/avpacket.c:264: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
libavcodec/avpacket.c: In function ‘av_packet_merge_side_data’:
libavcodec/avpacket.c:336: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
CC libavcodec/avpicture.o
CC libavcodec/avrndec.o
CC libavcodec/avs.o
CC libavcodec/avuidec.o
CC libavcodec/avuienc.o
CC libavcodec/bethsoftvideo.o
CC libavcodec/bfi.o
CC libavcodec/bgmc.o
CC libavcodec/bink.o
CC libavcodec/binkaudio.o
CC libavcodec/binkdsp.o
CC libavcodec/bintext.o
CC libavcodec/bitstream.o
libavcodec/bitstream.c: In function ‘ff_init_vlc_sparse’:
libavcodec/bitstream.c:348: error: unable to find a register to spill in class ‘AREG’
libavcodec/bitstream.c:348: error: this is the insn:
(insn 556 555 557 94 ./libavutil/atomic_gcc.h:57 (parallel [

(set (reg:SI 1 dx [orig:82 D.9034 ] [82])

(mem/v:SI (plus:SI (reg/v/f:SI 99 [ vlc ])

(const_int 16 [0x10])) [-1 S4 A32]))

(set (mem/v:SI (plus:SI (reg/v/f:SI 99 [ vlc ])

(const_int 16 [0x10])) [-1 S4 A32])

(unspec_volatile:SI [

(mem/v:SI (plus:SI (reg/v/f:SI 99 [ vlc ])

(const_int 16 [0x10])) [-1 S4 A32])

(reg/v/f:SI 99 [ vlc ])
(reg/f:SI 1 dx [196])

] 10))

(clobber (reg:CC 17 flags))

]) 2003 {*sync_compare_and_swapsi} (expr_list:REG_DEAD (reg/f:SI 1 dx [196])
(expr_list:REG_UNUSED (reg:CC 17 flags)

(nil))))

libavcodec/bitstream.c:348: confused by earlier errors, bailing out
Preprocessed source stored into /tmp/ccQuH6Sm.out file, please attach this to your bugreport.
make: * [libavcodec/bitstream.o] Error 1

Change History (9)

comment:1 Changed 5 years ago by cehoyos

  • Version changed from unspecified to git-master

Please add gcc -v output.

comment:2 Changed 5 years ago by pradeepvr

Hi cehoyos below is my gcc -v output:

Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.4.3-4ubuntu5.1' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --program-suffix=-4.4 --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-plugin --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i486 --with-tune=generic --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1)

comment:3 Changed 5 years ago by redxii

I get a similar error in MinGW-w64 32-bit toolchain, the 64-bit toolchain doesn't produce any errors.

CC      libavcodec/binkaudio.o
CC      libavcodec/binkdsp.o
CC      libavcodec/bintext.o
CC      libavcodec/bitstream.o
libavcodec/bitstream.c: In function 'ff_init_vlc_sparse':
libavcodec/bitstream.c:348:1: error: unable to find a register to spill in class 'AREG'
libavcodec/bitstream.c:348:1: error: this is the insn:
(insn 600 599 601 93 (parallel [
            (set (reg:SI 1 dx [orig:259 D.8365 ] [259])
                (mem/v:SI (plus:SI (reg/v/f:SI 262 [ vlc ])
                        (const_int 16 [0x10])) [-1 S4 A32]))
            (set (mem/v:SI (plus:SI (reg/v/f:SI 262 [ vlc ])
                        (const_int 16 [0x10])) [-1 S4 A32])
                (unspec_volatile:SI [
                        (mem/v:SI (plus:SI (reg/v/f:SI 262 [ vlc ])
                                (const_int 16 [0x10])) [-1 S4 A32])
                        (reg/v/f:SI 262 [ vlc ])
                        (reg/f:SI 1 dx [357])
                    ] UNSPECV_CMPXCHG))
            (set (reg:CCZ 17 flags)
                (compare:CCZ (unspec_volatile:SI [
                            (mem/v:SI (plus:SI (reg/v/f:SI 262 [ vlc ])
                                    (const_int 16 [0x10])) [-1 S4 A32])
                            (reg/v/f:SI 262 [ vlc ])
                            (reg/f:SI 1 dx [357])
                        ] UNSPECV_CMPXCHG)
                    (reg/v/f:SI 262 [ vlc ])))
        ]) ./libavutil/atomic_gcc.h:57 1843 {*sync_compare_and_swapsi}
     (expr_list:REG_DEAD (reg/f:SI 1 dx [357])
        (expr_list:REG_UNUSED (reg:CCZ 17 flags)
            (nil))))
libavcodec/bitstream.c:348: confused by earlier errors, bailing out
make: *** [libavcodec/bitstream.o] Error 1

GCC -v

$ gcc -v
Reading specs from e:/buildsys/mingw/bin/../lib/gcc/i686-w64-mingw32/4.6.3/specs
COLLECT_GCC=E:\Buildsys\MinGW\bin\gcc.exe
COLLECT_LTO_WRAPPER=e:/buildsys/mingw/bin/../libexec/gcc/i686-w64-mingw32/4.6.3/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: /home/ruben/mingw-w64/src/gcc/configure --host=i686-w64-mingw32 --build=x86_64-linux-gnu --target=i686-w64-mingw32 --with-sysroot=/home/ruben/m
ingw-w64/mingw32mingw32/mingw32 --prefix=/home/ruben/mingw-w64/mingw32mingw32/mingw32 --with-gmp=/home/ruben/mingw-w64/prereq/i686-w64-mingw32/install --with-mp
fr=/home/ruben/mingw-w64/prereq/i686-w64-mingw32/install --with-mpc=/home/ruben/mingw-w64/prereq/i686-w64-mingw32/install --with-ppl=/home/ruben/mingw-w64/prere
q/i686-w64-mingw32/install --with-cloog=/home/ruben/mingw-w64/prereq/i686-w64-mingw32/install --disable-ppl-version-check --disable-cloog-version-check --enable
-cloog-backend=isl --with-host-libstdcxx='-static -lstdc++ -lm' --enable-shared --enable-static --enable-threads=win32 --enable-plugins --disable-multilib --ena
ble-languages=c,lto,c++,objc,obj-c++,fortran,java --enable-libgomp --disable-dw2-exceptions --enable-sjlj-exceptions --enable-fully-dynamic-string --enable-libs
tdcxx-time --disable-nls --disable-werror --enable-checking=release --with-gnu-as --with-gnu-ld --disable-win32-registry --disable-rpath --disable-werror --with
-libiconv-prefix=/home/ruben/mingw-w64/prereq/i686-w64-mingw32/install --with-pkgversion=rubenvb-4.6.3-2-release --with-bugurl=mingw-w64-public@lists.sourceforg
e.net CC= CFLAGS='-O2 -march=nocona -mtune=core2 -fomit-frame-pointer -momit-leaf-frame-pointer' LDFLAGS=' -Wl,--large-address-aware'
Thread model: win32
gcc version 4.6.3 (rubenvb-4.6.3-2-release)
Last edited 5 years ago by redxii (previous) (diff)

comment:4 Changed 5 years ago by cehoyos

  • Component changed from undetermined to avcodec
  • Keywords regression added
  • Resolution set to fixed
  • Status changed from new to closed

fate claims that this was fixed in 121fc05, thank you for the report!

comment:5 Changed 5 years ago by pradeepvr

Hi cehoyos still am not able to build the code, could you please help me in building it...

comment:6 follow-up: Changed 5 years ago by cehoyos

Please provide a little more information: Which version are you trying to compile, what is your configure line, how does it fail?

comment:7 in reply to: ↑ 6 Changed 5 years ago by pradeepvr

Replying to cehoyos:

Please provide a little more information: Which version are you trying to compile, what is your configure line, how does it fail?

When I run version.sh file in ffmpeg root directory it shows "N-55069-g6df20d0", I think this is the version you are mentioning about.

I don't get what "configure line" means, am trying to build ffmpeg on ubuntu 10.04.

When I run make command(after configure) I get below error:

libavcodec/avpacket.c:262: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
libavcodec/avpacket.c:263: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
libavcodec/avpacket.c:264: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
libavcodec/avpacket.c: In function ‘av_packet_merge_side_data’:
libavcodec/avpacket.c:336: warning: ‘destruct’ is deprecated (declared at libavcodec/avcodec.h:1076)
CC libavcodec/avpicture.o
CC libavcodec/avrndec.o
CC libavcodec/avs.o
CC libavcodec/avuidec.o
CC libavcodec/avuienc.o
CC libavcodec/bethsoftvideo.o
CC libavcodec/bfi.o
CC libavcodec/bgmc.o
CC libavcodec/bink.o
CC libavcodec/binkaudio.o
CC libavcodec/binkdsp.o
CC libavcodec/bintext.o
CC libavcodec/bitstream.o
libavcodec/bitstream.c: In function ‘ff_init_vlc_sparse’:
libavcodec/bitstream.c:348: error: unable to find a register to spill in class ‘AREG’
libavcodec/bitstream.c:348: error: this is the insn:
(insn 556 555 557 94 ./libavutil/atomic_gcc.h:57 (parallel [
(set (reg:SI 1 dx [orig:82 D.9034 ] [82])
(mem/v:SI (plus:SI (reg/v/f:SI 99 [ vlc ])
(const_int 16 [0x10])) [-1 S4 A32]))
(set (mem/v:SI (plus:SI (reg/v/f:SI 99 [ vlc ])
(const_int 16 [0x10])) [-1 S4 A32])
(unspec_volatile:SI [
(mem/v:SI (plus:SI (reg/v/f:SI 99 [ vlc ])
(const_int 16 [0x10])) [-1 S4 A32])
(reg/v/f:SI 99 [ vlc ])
(reg/f:SI 1 dx [196])
] 10))
(clobber (reg:CC 17 flags))
]) 2003 {*sync_compare_and_swapsi} (expr_list:REG_DEAD (reg/f:SI 1 dx [196])
(expr_list:REG_UNUSED (reg:CC 17 flags)
(nil))))
libavcodec/bitstream.c:348: confused by earlier errors, bailing out
Preprocessed source stored into /tmp/ccQuH6Sm.out file, please attach this to your bugreport.
make: * [libavcodec/bitstream.o] Error 1

comment:8 follow-up: Changed 5 years ago by cehoyos

Please update to the latest version (git head), there were approximately 100 changes including the fix for this ticket since the version you are testing.

comment:9 in reply to: ↑ 8 Changed 5 years ago by pradeepvr

Replying to cehoyos:

Please update to the latest version (git head), there were approximately 100 changes including the fix for this ticket since the version you are testing.

Ok thanks a lot will checkout the latest code and let you know if its building...

Note: See TracTickets for help on using tickets.