Bug #1911

Error "input/mpegps.h: No such file or directory" when building with v4l support

Added by Marc van Gend over 9 years ago. Updated almost 9 years ago.

V4L (Analogue video)
Target version:
Start date:
Due date:
% Done:


Estimated time:
Found in version:
Affected Versions:


Hi, I'm trying to install tvheadend on Arch linux with support for analog TV cards. If I'm not mistaken (I'm by no means an expert in this field), I need to enable v4l support when building tvheadend.

I am using the tvheadend-git package from the AUR: To get v4l support, I added the --enable-v4l option to the configure command in the buildscript:
./configure --prefix=/usr --mandir=/usr/share/man/man1 --python=python2 --release --enable-v4l
Unfortunately this fails with the error message "fatal error: input/mpegps.h: No such file or directory". I couldn't find this mpegps.h file anywhere so it looks like a bug to me.

Full output of the arch linux build process (packer -S tvheadend-git):

Aur Targets    (1): tvheadend-git

Proceed with installation? [Y/n] 

Edit tvheadend-git PKGBUILD with $EDITOR? [Y/n] 

Edit tvheadend.install with $EDITOR? [Y/n] 

==> Making package: tvheadend-git 20140102.v3.9_316_g238636f-1 (Sat Jan  4 17:06:16 CET 2014)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Updating tvheadend git repo...
Fetching origin
  -> Found tvheadend.conf.d
  -> Found tvheadend.rc.d
  -> Found tvheadend.service
==> Validating source files with md5sums...
    tvheadend ... Skipped
    tvheadend.conf.d ... Passed
    tvheadend.rc.d ... Passed
    tvheadend.service ... Passed
==> Extracting sources...
  -> Creating working copy of tvheadend git repo...
Cloning into 'tvheadend'...
==> Starting pkgver()...
==> Removing existing pkg/ directory...
==> Starting build()...
==> Creating build directory
Already on 'master'
Your branch is up-to-date with 'origin/master'.
==> Starting make...
Checking support/features
  checking for cc execinfo.h ...                    ok
  checking for cc -mmmx ...                         ok
  checking for cc -msse2 ...                        ok
  checking for cc getloadavg ...                    ok
  checking for cc atomic64 ...                      ok
  checking for cc lockowner ...                     ok
  checking for py module gzip ...                   ok
  checking for bzip2 ...                            ok
  checking for pkg openssl  ...                     ok
  checking for cc linux/dvb/version.h ...           ok
  checking for pkg zlib  ...                        ok
  checking for pkg libcurl  ...                     ok
  checking for pkg liburiparser  ...                fail
  checking for pkg avahi-client  ...                ok
  checking for pkg libavcodec <=55.0.0 ...          fail
  checking for cc sys/inotify.h ...                 ok
  fetching dvb-scan files ...                       ok

  Using C compiler:                        cc
  Using C flags:                           -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4
  Build for arch:                          x86_64

  Using PYTHON:                            python2

  cwc                                      yes
  v4l                                      yes
  linuxdvb                                 yes
  iptv                                     yes
  tsfile                                   yes
  dvbscan                                  yes
  timeshift                                yes
  trace                                    yes
  imagecache                               yes
  avahi                                    yes
  zlib                                     yes
  libav                                    no
  inotify                                  yes
  curl                                     yes
  epoll                                    yes
  uriparser                                no
  ccache                                   no
  bundle                                   no
  dvbcsa                                   no
  kqueue                                   no
  execinfo                                 yes
  mmx                                      yes
  sse2                                     yes
  getloadavg                               yes
  atomic64                                 yes
  lockowner                                yes
  py_gzip                                  yes
  bin_bzip2                                yes
  ssl                                      yes
  dvbapi                                   yes
  inotify_h                                yes
  mpegts                                   yes
  mpegps                                   yes

  openssl                                  1.0.1e
  zlib                                     1.2.8
  libcurl                                  7.34.0
  avahi-client                             0.6.31

Installation paths:
  Prefix:                                  /usr
  Binaries:                                ${prefix}/bin
  Libraries:                               ${prefix}/lib
  Data files:                              ${prefix}/share
  Man pages:                               /usr/share/man/man1

Final Binary:

Tvheadend Data Directory:

CC              src/version.o
CC              src/main.o
In file included from src/main.c:54:0:
src/input.h:108:26: fatal error: input/mpegps.h: No such file or directory
 #include "input/mpegps.h" 
compilation terminated.
Makefile:300: recipe for target '/tmp/packerbuild-1001/tvheadend-git/tvheadend-git/src/tvheadend-build/build.linux/src/main.o' failed
make: *** [/tmp/packerbuild-1001/tvheadend-git/tvheadend-git/src/tvheadend-build/build.linux/src/main.o] Error 1
==> ERROR: A failure occurred in build().
The build failed.

Thanks for your help.



Updated by Adam Sutton over 9 years ago

  • Status changed from New to Accepted

V4l support is not currently available in master, please use release/3.4 or 3.6 branch.



Updated by Marc van Gend over 9 years ago

OK, thanks. Indeed the 3.4 package at works as expected.


Updated by Joo Seppi almost 9 years ago


as I am moving from ARM to x86_64 I was fiddling with configure options and stumbled upon this. Is this issue still supposed to be "broken" as in there shouldn't be mpegps.h in master currently?



Also available in: Atom PDF