Summary: | media-video/mjpegtools-1.9.0-r1 fails to configure with linux-headers-2.6.38 due to missing linux/videodev.h | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Juergen Rose <rose> |
Component: | Current packages | Assignee: | Gentoo Media-video project <media-video> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | Adrian.Bassett, anotherbearcatfan, ansla80, ashl1future, billydv1, bugzilla, cedric.godin, chris, dan.dickey, denny.reeh, DrWilken, dschridde+gentoobugs, dylan.wakefield, ed, facorread, fcoiffie, fordfrog, gentoo, georgi, guillaume.ramelet, hilco.wijbenga, hwoarang, it-knodel, jcwren, jo, jrmalaq, jules.mandalay, jwbraun, kentnl, kredba, kripton, kroemmelbein, m.debruijne, mail, marco, marsoft, Martin.vGagern, matsyuk.yurii, media-tv, n-roeser, nbowler, neil, norman, pietuguitarra, polidevk.polidevk, ro-wa, rob, sachse, saintdev, silvio.gerli, stefan.tell, ville.aakko, Wizzleby, xmw, xo0ox, zeekec |
Priority: | Normal | Keywords: | PATCH |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | http://mjpeg.cvs.sourceforge.net/viewvc/mjpeg/mjpeg_play/configure.ac?r1=1.66&r2=1.64 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 359595 | ||
Attachments: |
/var/tmp/portage/media-video/mjpegtools-1.9.0-r1/work/mjpegtools-1.9.0/config.log
Modified version of current ebuild Patch for ebuild posted above (put in the files dir) mjpegtools-kernel-headers-2.6.38-videodev.h.patch mjpegtools-kernel-headers-2.6.38-videodev.h.patch |
Description
Juergen Rose
2011-03-19 12:59:21 UTC
Created attachment 266499 [details]
/var/tmp/portage/media-video/mjpegtools-1.9.0-r1/work/mjpegtools-1.9.0/config.log
*** Bug 359747 has been marked as a duplicate of this bug. *** It goes without saying that this breaks ebuilds like transcode and k3b which depend on it, depending on your USE flags. Temporary fix: USE="-mjpeg" emerge -a transcode And the dependency on mjpegtools will be eliminated. Created attachment 267403 [details]
Modified version of current ebuild
Until there is some proper fix from upstream, I've created an new ebuild and accompanying patch for my own use, just figured I'd share here for anyone that needs it.
Basically just rips the v4l1 stuff out of the config.
Created attachment 267405 [details]
Patch for ebuild posted above (put in the files dir)
Patch for ebuild posted above.
btw. this is also a problem for mytharchive as it depends on mjpegtools without any USE-flag (In reply to comment #4) > Created attachment 267403 [details] > Modified version of current ebuild Many people prefer to see the diff for small changes. Please either attach diffs or put these into the comment field. Thanks you for the patch! --- mjpegtools-1.9.0-r1.ebuild.orig 2011-03-16 00:01:17.000000000 +0100 +++ mjpegtools-1.9.0-r1.ebuild 2011-03-31 09:48:24.000000000 +0200 @@ -38,7 +38,8 @@ cd "${S}" sed -i -e '/ARCHFLAGS=/s:=.*:=:' configure epatch "${FILESDIR}"/${P}-glibc-2.10.patch \ - "${FILESDIR}"/${P}-jpeg-7.patch + "${FILESDIR}"/${P}-jpeg-7.patch \ + "${FILESDIR}"/${P}-removeV4L1.patch } src_compile() { (In reply to comment #7) > (In reply to comment #4) > > Created attachment 267403 [details] > > Modified version of current ebuild > > Many people prefer to see the diff for small changes. Please either attach > diffs or put these into the comment field. Thanks for that Micheal, although I should have known, I'll (hopefully) remember for next time. I was very tired when I posted, in fact, my keyboard kept smacking me in the face to wake me up :) i hope it will put in portage soon, because i have same problem at emerge -uDN world too now :) Reported this upstream: https://sourceforge.net/tracker/?func=detail&aid=3272052&group_id=5776&atid=105776 Someone care to set the URL on this report here? Thanks for posting the ebuild and patch - it works for me, too. (In reply to comment #11) > Thanks for posting the ebuild and patch - it works for me, too. Works for me as well. Thanks! Created attachment 268527 [details, diff]
mjpegtools-kernel-headers-2.6.38-videodev.h.patch
Suggested patch. Downgrades configure error to a warning.
Run ./autogen.sh after applying patch.
when does the patch go into portage ? thanks +1. when does the patch go into portage ? thanks In reply to comments about moving this into portage- Would fix the merge failures obviously but would it not then disable support for transcoding from a tuner device? Or anything a trnascoder might need from these tools? I see this error too but... random david # emerge -vp linux-headers These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] sys-kernel/linux-headers-2.6.38 0 kB are installed and I should think it would be able to find that header. (In reply to comment #16) > Would fix the merge failures obviously but would it not then disable support > for transcoding from a tuner device? > [ebuild R ] sys-kernel/linux-headers-2.6.38 0 kB > are installed and I should think it would be able to find that header. The latest linux-headers REMOVED a header that used to be present before. The reason is that the header is for version 1 of the video4linux interface, which is obsoleted by version 2. So if mjpegtools would support with V4L2 all features it did support with V4L1, then it should be possible to remove the V4L1 support without loss of functionality. The patch supplied here, however, doesn't accomplish this: without the HAVE_V4L configure switch, some binaries like lavrec won't be built. So yes, the patch provided here does loose features. To address this, mjpegtools would have to be properly ported to V4L2, although I have no clue how much work that would be. The mjpeg_howto.txt says this abount V4L2 support: "But v4l2 is currently (7. Jan. 2003) only supported for the zoran based cards (BUZ, DC10, DC10+, LML33) if you use the CVS driver from mjpeg.sf.net tagged with ZORAN_VIDEODEV_2." In terms of Gentoo best practice perhaps even worse than the loss of features: with the patch from comment #13, whether or not V4L support gets compiled in or not is determined automagically at compile time, not based on some USE flag or similar. The patch from comment #5 removes V4L support unconditionally. So perhaps the cleanest way to handle this would be introducing a new USE flag, which when enabled will force a dependency on older linux headers, and when disabled will cause the patch from comment #5 to be applied. Created attachment 269575 [details, diff]
mjpegtools-kernel-headers-2.6.38-videodev.h.patch
Good call. This version of the patch kills the automagic (--with-v4l/--without-v4l, USE=+/-v4l).
Sorry, but this last patch didn't work for me. I copied the patch to files dir in PORT_OVERLAY, cvhanged mjpegtools-...ebuild acordingly, made an ebuild digest, but while emereg the same error accurs all the same: checking linux/videodev.h presence... no checking for linux/videodev.h... no configure: error: videodev.h not found - please install the linux kernel headers !!! Please attach the following file when seeking support: !!! /var/tmp/portage/media-video/mjpegtools-1.9.0-r1/work/mjpegtools-1.9.0/config.log * ERROR: media-video/mjpegtools-1.9.0-r1 failed (compile phase): * econf failed * * Call stack: * ebuild.sh, line 56: Called src_compile * environment, line 2884: Called econf '--with-x' '--disable-xfree-ext' '--with-libquicktime' '--with-libpng' '--without-v4l' '--with-gtk' '--without-sdl' '--with-libdv=/usr' '--enable-simd-accel' '--enable-largefile' '--without-jpeg-mmx' '--with-dv-yv12' * ebuild.sh, line 557: Called die * The specific snippet of code: * die "econf failed" * What do I do wrong? Any further information needed? Greets, Sebastian 1. downgrade to linux-headers-2.6.36.1 2. emerge mjpegtools-1.9.0-r1 3. update to linux-headers-2.6.38 Works fine for me. Sebastian, did you run eautoreconf? See http://www.gentoo.org/proj/en/qa/autofailure.xml Matsyuk, that's not a long-term solution. Sorry Ed, but I don't know about eautoreconf and can not find it on my system. The link didn't really help.I am no developer. (In reply to comment #22) > I don't know about eautoreconf and can not find it on my system. It's a function in autotools.eclass. So you have to add autotools to the inherit statement, and also have to call eautoreconf, preferrably in the src_prepare function which you'd have to add. The reason is that the patch from Ed only modifies configure.ac, whereas that from Dylan did modify configure as well. eautoreconf will recreate configure from configure.ac. (In reply to comment #23) > (In reply to comment #22) > > I don't know about eautoreconf and can not find it on my system. > > It's a function in autotools.eclass. So you have to add autotools to the > inherit statement, and also have to call eautoreconf, preferrably in the > src_prepare function which you'd have to add. The reason is that the patch from > Ed only modifies configure.ac, whereas that from Dylan did modify configure as > well. eautoreconf will recreate configure from configure.ac. Thanks. I will try. (In reply to comment #23) > (In reply to comment #22) > > I don't know about eautoreconf and can not find it on my system. > > It's a function in autotools.eclass. So you have to add autotools to the > inherit statement, and also have to call eautoreconf, preferrably in the > src_prepare function which you'd have to add. The reason is that the patch from > Ed only modifies configure.ac, whereas that from Dylan did modify configure as > well. eautoreconf will recreate configure from configure.ac. Thanks. I will try. For those who are struggling with how to add the patch and use eautoreconf I have added Ed's patch to my dev overlay ready to go you can find it at http://git.overlays.gentoo.org/gitweb/?p=dev/anarchy.git;a=commitdiff;h=53e4c30e4552ff3039cefb6c1ed59556404fdf58 (In reply to comment #26) > For those who are struggling with how to add the patch and use eautoreconf I > have added Ed's patch to my dev overlay ready to go you can find it at > > http://git.overlays.gentoo.org/gitweb/?p=dev/anarchy.git;a=commitdiff;h=53e4c30e4552ff3039cefb6c1ed59556404fdf58 The ebuild is modifying first configure, then it runs eautoreconf and regenerates it... so pretty much a no-go. (In reply to comment #26) > For those who are struggling with how to add the patch and use eautoreconf I > have added Ed's patch to my dev overlay ready to go you can find it at > > http://git.overlays.gentoo.org/gitweb/?p=dev/anarchy.git;a=commitdiff;h=53e4c30e4552ff3039cefb6c1ed59556404fdf58 I downloaded the ebuild from your overlay, but I still get the error checking linux/videodev.h usability... no checking linux/videodev.h presence... no checking for linux/videodev.h... no configure: error: videodev.h not found - please install the linux kernel headers (In reply to comment #28) > I downloaded the ebuild from your overlay, but I still get the error > checking linux/videodev.h usability... no > checking linux/videodev.h presence... no > checking for linux/videodev.h... no > configure: error: videodev.h not found - please install the linux kernel > headers Have you set USE=-v4l? (In reply to comment #29) > (In reply to comment #28) > > I downloaded the ebuild from your overlay, but I still get the error > > checking linux/videodev.h usability... no > > checking linux/videodev.h presence... no > > checking for linux/videodev.h... no > > configure: error: videodev.h not found - please install the linux kernel > > headers > > Have you set USE=-v4l? No, sorry, my failure, I was thinking this patch solves the problem... Thanks for the last hint. I got mjpegtools compiled now. Greets, Sebastian Could the ebuild be updated to depend on <linux-headers-2.6.38? I have USE=-v4l and still get this issue. (media-video/mjpegtools-1.9.0-r1::gentoo) (In reply to comment #32) > Could the ebuild be updated to depend on <linux-headers-2.6.38? I have USE=-v4l > and still get this issue. (media-video/mjpegtools-1.9.0-r1::gentoo) [ebuild R ] media-video/mjpegtools-1.9.0-r1 USE="gtk mmx png quicktime sdl -dga -dv -v4l -yv12 (-X%*)" 0 kB P.S: See bug #361799 for a bump to 2.0.0 which also incorporates a fix. (In reply to comment #10) > Reported this upstream: Upstream committed a modification to their configure.ac: http://mjpeg.cvs.sourceforge.net/viewvc/mjpeg/mjpeg_play/configure.ac?r1=1.64&r2=1.65&view=patch That change also introduces a --without-v4l switch just like the one from comment #18, but in contrast to that it will only warn not fail if the required headers are not available. So take your pick, either an upstream-accepted patch or a patch that might cause automagic behaviour if dependencies listed in the ebuild don't behave as expected. (In reply to comment #35) > So take your pick, either an upstream-accepted patch or a patch > that might cause automagic behaviour I got confused there. It should have been: either take an upstream-accepted patch that might cause automagic behaviour (but should not do so under sane build environments), or take a custom Gentoo-ish patch (from comment #18) that will ensure the build fails if the required header isn't available. This package has been broken for weeks. Gentoo devs create custom patches all the time to fix problems like this, and it looks like there might be a version bump with a fix. Wouldn't it make sense to do one of these to get things unbroken? I also wonder when this bug will be fixed. The two files above, dated 2011-03-27, work perfectly. I can compile and run it under 2.6.28 and it neatly solves the problem. I haven't found any breakage that it causes. Is there something else that is holding this up? Whenever I do "emerge --sync", I have to remember to put these files back, because emerge removes them. Would be great to have these in the official Portage tree. Cc'ing Samuli who did the bump to 1.9.0-r1. He may want to take a look at this (In reply to comment #39) > Cc'ing Samuli who did the bump to 1.9.0-r1. He may want to take a look at this Thanks but I'm in the media-video alias and not intrested in this package, sorry. I've told 2 other developers they are free to take over the package, and they promised to commit the fixes but haven't seen anything in tree yet... No idea why. Far as I'm concerned, this package can be lastrited with all it's reverse dependencies if nobody is willing to fix it Ok Samuli. I will test the upstream patch and commit it on behalf of QA This should be fixed in mjpegtools-2.0.0_rc1 please reopen if there are still issues. FYI. (In reply to comment #17) > So yes, the patch > provided here does loose features. To address this, mjpegtools would have to be > properly ported to V4L2, although I have no clue how much work that would be. Probably easiest through media-libs/libv4l, have proposed a patch upstream: http://sourceforge.net/tracker/?func=detail&aid=3306829&group_id=5776&atid=305776 Some testing with a V4L input device would be useful, but I currently don't have such a device. Testing using an ebuild will require an eautoreconf run. If you do test the patch, please report your findings upstream, and if you want V4L support for recent kernels included, please ask upstream to commit that patch. I don't expect Gentoo to apply the patch unless upstream does. |