Bug #2872
Cannot Build from master branch in Debian 8
100%
Description
I get this message:
CC src/tcp.o
CC src/udp.o
CC src/url.o
CC src/http.o
src/http.c: In function ‘http_encoding_valid’:
src/http.c:331:17: error: ‘saveptr’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
while (tok == ' ')
^
cc1: all warnings being treated as errors
Makefile:428: recipe for target '/usr/src/tvheadend/build.linux/src/http.o' failed
make: ** [/usr/src/tvheadend/build.linux/src/http.o] Error 1
History
Updated by Alfred Zastrow over 9 years ago
quick fix to get comiling done is to change this line in src/http.c
char *tokbuf, *tok, *saveptr, *q, *s;
into
char *tokbuf, *tok, *saveptr = NULL, *q, *s;
Updated by Cassio Simoes over 9 years ago
Alfred Zastrow wrote:
quick fix to get comiling done is to change this line in src/http.c
char *tokbuf, *tok, *saveptr, *q, *s;
into
char *tokbuf, *tok, *saveptr = NULL, *q, *s;
Thank you very much, but now I get this:
/usr/lib/x86_64-linux-gnu/libavcodec.a(vaapi.o): In function `ff_vaapi_mpeg_end_frame':
(.text+0x791): undefined reference to `vaEndPicture'
/usr/lib/x86_64-linux-gnu/libavcodec.a(vaapi.o): In function `ff_vaapi_mpeg_end_frame':
(.text+0x810): undefined reference to `vaUnmapBuffer'
/usr/lib/x86_64-linux-gnu/libavcodec.a(vaapi.o): In function `ff_vaapi_mpeg_end_frame':
(.text+0x850): undefined reference to `vaUnmapBuffer'
collect2: error: ld returned 1 exit status
Makefile:424: recipe for target '/usr/src/tvheadend/build.linux/tvheadend' failed
make2: * [/usr/src/tvheadend/build.linux/tvheadend] Error 1
make2: Leaving directory '/usr/src/tvheadend'
debian/rules:11: recipe for target 'override_dh_auto_build' failed
make1: [override_dh_auto_build] Error 2
make1: Leaving directory '/usr/src/tvheadend'
debian/rules:5: recipe for target 'build' failed
make: ** [build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2
root@tvh:/usr/src/tvheadend#
Updated by Cassio Simoes over 9 years ago
B C wrote:
try to configure with --enable-libffmpeg_static
I am using AUTOBUILD_CONFIGURE_EXTRA=--enable-libffmpeg_static ./Autobuild.sh -t precise-amd64
Updated by B C over 9 years ago
although I'm normally not using Autobuild.sh it worked for me. try make distclean before. Is it necessary to specify a ubuntu version for jessie???
Updated by Cassio Simoes over 9 years ago
B C wrote:
although I'm normally not using Autobuild.sh it worked for me. try make distclean before. Is it necessary to specify a ubuntu version for jessie???
Not really, but AUTOBUILD_CONFIGURE_EXTRA=--enable-libffmpeg_static ./Autobuild.sh gives me the same result..
Also already tried make distclean
Should I try AUTOBUILD_CONFIGURE_EXTRA=--enable-libffmpeg_static ./Autobuild.sh -t debian ?
Best Rergards,
Cassio
Updated by B C over 9 years ago
no idea about -t, but for me it's working without it and with precise, so that should not be the problem. Does it work if you do not use autobuild? so
./configure --enable-libffmpeg_static
make
Updated by Cassio Simoes over 9 years ago
B C wrote:
no idea about -t, but for me it's working without it and with precise, so that should not be the problem. Does it work if you do not use autobuild? so
./configure --enable-libffmpeg_static
make
gives me
(.text+0x810): undefined reference to `vaUnmapBuffer'
/usr/lib/x86_64-linux-gnu/libavcodec.a(vaapi.o): In function `ff_vaapi_mpeg_end_frame':
(.text+0x850): undefined reference to `vaUnmapBuffer'
collect2: error: ld returned 1 exit status
Makefile:424: recipe for target '/usr/src/tvheadend/build.linux/tvheadend' failed
make: *** [/usr/src/tvheadend/build.linux/tvheadend] Error 1
Updated by B C over 9 years ago
well it seems it does find some other libav somehow, you could remove it with apt if you are sure you don't need it anywhere else. It might be that --enable-libffmpeg_static needs to be fixed.
Or try to move out libav libs out of /usr/lib/x86_64-linux-gnu/ temporarily
Updated by Jaroslav Kysela over 9 years ago
- Status changed from New to Fixed
- % Done changed from 0 to 100
Applied in changeset commit:tvheadend|e1e5fca19cf735db6338e794b8bf63d801d23f1e.
Updated by Cassio Simoes over 9 years ago
Jaroslav Kysela wrote:
Both issues should be fixed in v4.1-48-ge1e5fca .
Now I get the following...
find debian/tvheadend-dbg/usr/lib -type f -name '*.ali' -print0 2>/dev/null | xargs -0r chmod uga-w
debian/rules override_dh_strip
make[1]: Entering directory '/usr/src/tvheadend'
dh_strip --dbg-package=tvheadend-dbg
install -d debian/tvheadend-dbg/usr/lib/debug//usr/bin
objcopy --only-keep-debug debian/tvheadend/usr/bin/tvheadend debian/tvheadend-dbg/usr/lib/debug//usr/bin/tvheadend
chmod 644 debian/tvheadend-dbg/usr/lib/debug//usr/bin/tvheadend
strip --remove-section=.comment --remove-section=.note debian/tvheadend/usr/bin/tvheadend
objcopy --add-gnu-debuglink debian/tvheadend-dbg/usr/lib/debug//usr/bin/tvheadend debian/tvheadend/usr/bin/tvheadend
make[1]: Leaving directory '/usr/src/tvheadend'
dh_makeshlibs
rm -f debian/tvheadend/DEBIAN/shlibs
rm -f debian/tvheadend-dbg/DEBIAN/shlibs
dh_shlibdeps
dpkg-shlibdeps -Tdebian/tvheadend.substvars debian/tvheadend/usr/bin/tvheadend
dpkg-shlibdeps: error: no dependency information found for /usr/local/lib/libiconv.so.2 (used by debian/tvheadend/usr/bin/tvheadend)
Hint: check if the library actually comes from a package.
dh_shlibdeps: dpkg-shlibdeps -Tdebian/tvheadend.substvars debian/tvheadend/usr/bin/tvheadend returned exit code 2
debian/rules:5: recipe for target 'binary' failed
make: *** [binary] Error 2
dpkg-buildpackage: error: debian/rules binary gave error exit status 2