Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 55084 - ivtv doesn't compile anymore on gentoo-dev-sources-2.6.7
Summary: ivtv doesn't compile anymore on gentoo-dev-sources-2.6.7
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Brian Jackson (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-06-24 14:38 UTC by Greisberger Christophe
Modified: 2004-08-26 13:40 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Kernel .config file (.config,33.13 KB, text/plain)
2004-06-24 14:40 UTC, Greisberger Christophe
Details
Fixing ivtv build for 2.6.7 kernels (ivtv-0.1.9-r4.patch,158.35 KB, patch)
2004-07-03 03:51 UTC, Maurice van der Pot (RETIRED)
Details | Diff
Modifies ivtv to work with kernel interface >=2.6.8-rc3 (ivtv-0.1.9_syscallh.patch,1.40 KB, patch)
2004-08-09 12:19 UTC, Maurice van der Pot (RETIRED)
Details | Diff
New ebuild that conditionally applies syscallh patch (ivtv-0.1.9-r4.ebuild,3.39 KB, text/plain)
2004-08-09 12:21 UTC, Maurice van der Pot (RETIRED)
Details
ebuild that gets rid of error message during emerge (ivtv-0.1.9-r4.ebuild,3.41 KB, text/plain)
2004-08-11 02:33 UTC, Maurice van der Pot (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Greisberger Christophe 2004-06-24 14:38:46 UTC
I tried on 2.6.7 and 2.6.7-r5 and it fails at compilation time.
It compiled without problems on 2.6.5-r1



Reproducible: Always
Steps to Reproduce:
1. emerge media-tv/ivtv
2.
3.

Actual Results:  
Failed at compilation: 
# emerge ivtv 
Calculating dependencies ...done! 
>>> emerge (1 of 1) media-tv/ivtv-0.1.9-r3 to / 
>>> md5 src_uri ;-) ivtv-0.1.9.tar.gz 
>>> md5 src_uri ;-) pvr250_17_21288.exe 
>>> md5 src_uri ;-) ivtv-0.1.9-r3.patch 
>>> Unpacking source... 
>>> Unpacking ivtv-0.1.9.tar.gz to /var/tmp/portage/ivtv-0.1.9-r3/work 
 * Applying ivtv-0.1.9-r3.patch...                                        [ ok ] 
>>> Source unpacked. 
make -C /lib/modules/2.6.7-gentoo-r5/build 
SUBDIRS=/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver modules 
make[1]: Entering directory `/usr/src/linux-2.6.7-gentoo-r5' 
  CC [M]  /var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/msp3400.o 
  CC [M]  /var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/saa7115.o 
  CC [M]  /var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/tveeprom.o 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/tveeprom.c:81:2: warning: #warning Using 
temporary hack for missing I2C driver-ID for tveeprom 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/tveeprom.c:89: warning: `verbose' defined 
but not used 
  CC [M]  /var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.o 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c: In function `ivtv_init_buffer': 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:347: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c: In function 
`ivtv_find_firmware_mailbox': 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:658: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:658: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:667: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:667: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:681: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:681: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:691: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:691: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:699: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:699: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:713: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:713: warning: use of cast 
expressions as lvalues is deprecated 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c: In function `ivtv_dec_poll': 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:2846: warning: comparison of 
distinct pointer types lacks a cast 
  CC [M]  /var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-i2c.o 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-i2c.c:59: error: 
`I2C_ADAP_CLASS_TV_ANALOG' undeclared here (not in a function) 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-i2c.c:59: error: initializer element is not 
constant 
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-i2c.c:59: error: (near initialization for 
`ivtv_i2c_adapter_template.class') 
make[2]: *** [/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-i2c.o] Error 1 
make[1]: *** [_module_/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver] Error 2 
make[1]: Leaving directory `/usr/src/linux-2.6.7-gentoo-r5' 
make: *** [all] Error 2 
 
!!! ERROR: media-tv/ivtv-0.1.9-r3 failed. 
!!! Function src_compile, Line 41, Exitcode 2 
!!! build of driver failed 
 

Expected Results:  
 

# emerge info 
Portage 2.0.50-r8 (default-x86-1.4, gcc-3.3.3, 
glibc-2.3.3_pre20040420-r0,2.3.3.20040420-r0, 2.6.7-gentoo-r5) 
================================================================= 
System uname: 2.6.7-gentoo-r5 i686 AMD Athlon(tm) XP 2800+ 
Gentoo Base System version 1.4.16 
distcc 2.14 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] 
Autoconf: sys-devel/autoconf-2.59-r4 
Automake: sys-devel/automake-1.8.5-r1 
ACCEPT_KEYWORDS="x86 ~x86" 
AUTOCLEAN="yes" 
CFLAGS="-march=athlon-xp -O3 -pipe -fforce-addr -fomit-frame-pointer 
-fprefetch-loop-arrays -funroll-loops -frerun-cse-after-loop -frerun-loop-opt 
-falign-functions=4 -mmmx -msse -m3dnow -mfpmath=387,sse" 
CHOST="i686-pc-linux-gnu" 
COMPILER="gcc3" 
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control /var/www/localhost/htdocs//mythweb/config" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" 
CXXFLAGS="-march=athlon-xp -O3 -pipe -fforce-addr -fomit-frame-pointer 
-fprefetch-loop-arrays -funroll-loops -frerun-cse-after-loop -frerun-loop-opt 
-falign-functions=4 -mmmx -msse -m3dnow -mfpmath=387,sse" 
DISTDIR="/usr/portage/distfiles" 
FEATURES="autoaddcvs ccache sandbox" 
GENTOO_MIRRORS="http://gentoo.oregonstate.edu 
http://distro.ibiblio.org/pub/Linux/distributions/gentoo" 
MAKEOPTS="-j2" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR="/usr/portage" 
PORTDIR_OVERLAY="" 
SYNC="rsync://rsync.gentoo.org/gentoo-portage" 
USE="3dnow X X509 Xaw3d aalib acl acpi adns afs aim alsa apache2 apm arts 
athena audiofile avi berkdb bidi canna caps cdr cjk clanJavaScript clanVoice crypt 
cscope cups curl dga directfb divx4linux djbfft dnd doc dv dvb dvd dvdr encode ethereal 
evo faad2 fam fastcgi fbcon fdftk fftw flac flash fmod foomaticdb freewnn gd gdbm ggi 
gif gimp gimpprint gmp gphoto2 gstreamer gtk gtk2 hbci icq imagemagick imap imlib 
imlib2 jack java javamail javascript jbig jikes joystick jpeg junit justify kde ladcca lcms 
lesstif libcaca libwww linguas_ar linguas_de linguas_en linguas_fr linguas_hu linguas_jp 
linguas_ro linguas_ru linguas_sp lirc live lzw-tiff mad maildir matroska mbox mcal 
md5sum memlimit migemo mikmod mmx mng monkey motif mozilla mpeg msn mysql 
nas ncurses neXt netcdf nls nocardbus nocd ntlm nvidia oav odbc offensive ofx 
oggvorbis openal opengl oscar pam parse-clocks pcre pda pdflib perl physfs pic pie 
plotutils png portaudio ppds prelude pwdb python qt quicktime readline samba sasl 
scanner sdl slang slp sndfile speex spell sse ssl svg svga szip tcltk tcpd tetex theora tiff 
tools transcode truetype ucs2 unicode usb v4l v4l2 vhosts videos vim-with-x wifi wmf 
wxwindows x86 xinerama xml xml2 xmms xosd xv xvid yahoo yv12 zlib"
Comment 1 Greisberger Christophe 2004-06-24 14:40:21 UTC
Created attachment 34088 [details]
Kernel .config file
Comment 2 Greisberger Christophe 2004-06-24 14:46:45 UTC
I forgot: the .config file is the same as 2.6.5-r1
I juste copied it to the new kernel tree and did a "make oldconfig"...
Comment 3 David Klempner 2004-06-25 17:32:50 UTC
I get the same issue. 
Comment 4 Salim Fadhley 2004-06-26 13:43:19 UTC
It compile perfectly on 2.6.4, but fails identically on kernel 2.6.7

Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7)
=================================================================
System uname: 2.6.7 i686 VIA Samuel 2
Gentoo Base System version 1.4.16
distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer -mmmx"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer -mmmx"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs buildpkg ccache distcc fixpackages sandbox"
GENTOO_MIRRORS="http://194.117.158.29 http://194.117.158.28 ftp://194.117.158.29/mirrors/gentoo http://ftp.heanet.ie/pub/gentoo/ ftp://194.117.158.28/mirrors/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.uk.gentoo.org/gentoo-portage"
USE="3dnow X aalib acpi4linux alsa amd apache2 apm arts avi berkdb bluetooth bzlib cdr cle266 crypt cups curl dga directfb divx4linux dnd dvd emacs encode esd ethereal faad fbcon fbdev ffmpeg flash gd gdbm ggi gif gpm gtk gtk2 imlib jack java joystick jpeg kde lcms libg++ libwww lirc mad mikmod mmx motif mozilla mpeg mpeg4 msn mysql nas ncurses nls oggvorbis opengl oss pam pda pdflib perl php png pnp python qt quicktime readline samba sdl slang speedo speex spell ssl svg svga tcpd theora tiff truetype unicode v4l v4l2 wifi wmf wxwindows x86 xinerama xml2 xmms xosd xv xvid yahoo zlib"
Comment 5 Greisberger Christophe 2004-06-29 14:25:28 UTC
Hum... someone working on it?
Comment 6 koepfle 2004-06-30 18:05:42 UTC
The fix is easy. You just have to replace I2C_ADAP_CLASS_TV_ANALOG with I2C_CLASS_TV_ANALOG in the ivtv driver because this name has changed in the 2.6.7 kernel.
However I am new to gentoo and therefor don't know how to integrate this into the ivtv ebuild.
Till someone patches the ebuild you can just add the line
#define I2C_ADAP_CLASS_TV_ANALOG (1<<1)
to the definitions at line 288+ in
/usr/src/linux/include/linux/i2c.h 
as a workaround.
Works fine on my system here.
Comment 7 Maurice van der Pot (RETIRED) gentoo-dev 2004-07-03 03:51:21 UTC
Created attachment 34697 [details, diff]
Fixing ivtv build for 2.6.7 kernels

Here is a patch that makes the change proposed in comment #6.

To use it you have two options:

- either you copy the patch to /usr/portage/distfiles, 
copy /usr/portage/media-tv/ivtv/ivtv-0.1.9-r3.ebuild to 
/usr/portage/media-tv/ivtv/ivtv-0.1.9-r4.ebuild and 
generate digests for this ebuild (ebuild
/usr/portage/media-tv/ivtv/ivtv-0.1.9-r4.ebuild digest)

- or you copy the patch to /usr/portage/distfiles and rename 
it to ivtv-0.1.9-r3.patch

If you make the changes like this they will be overwritten
the next time you do an emerge sync. To prevent that, 
use the portage overlay directory instead.
Comment 8 Maurice van der Pot (RETIRED) gentoo-dev 2004-07-03 03:53:41 UTC
Forgot to mention this patch is a superset of the already present set of patches.
This patch = -r3 patch + fix for 2.6.7.
Comment 9 Gregg Casillo 2004-07-11 18:02:49 UTC
Yes, this patch works for me. Thanks!
Comment 10 Gregg Casillo 2004-07-25 01:48:42 UTC
Uh, can we get this into portage?
Comment 11 Maurice van der Pot (RETIRED) gentoo-dev 2004-08-07 13:57:40 UTC
Seems like things are deteriorating... I can still build ivtv, 
but it does not work anymore.

During the build, I get:
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:459: warning: implicit declaration of function `open'
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:465: warning: implicit declaration of function `lseek'
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:476: warning: implicit declaration of function `read'
/var/tmp/portage/ivtv-0.1.9-r3/work/ivtv/driver/ivtv-driver.c:482: warning: implicit declaration of function `close'

Followed a little later by:
  MODPOST
*** Warning: "close" [/var/tmp/portage/ivtv-0.1.9-r4/work/ivtv/driver/ivtv.ko] undefined!
*** Warning: "open" [/var/tmp/portage/ivtv-0.1.9-r4/work/ivtv/driver/ivtv.ko] undefined!
*** Warning: "read" [/var/tmp/portage/ivtv-0.1.9-r4/work/ivtv/driver/ivtv.ko] undefined!
*** Warning: "lseek" [/var/tmp/portage/ivtv-0.1.9-r4/work/ivtv/driver/ivtv.ko] undefined!

The emerge completes seemingly successful, but when modprobing:

FATAL: Error inserting ivtv (/lib/modules/2.6.8-rc3/extra/ivtv.ko): Unknown symbol in module, or unknown parameter (see dmesg)

dmesg:
ivtv: Unknown symbol lseek
ivtv: Unknown symbol read
ivtv: Unknown symbol open
ivtv: Unknown symbol close
Comment 12 Maurice van der Pot (RETIRED) gentoo-dev 2004-08-09 12:19:04 UTC
Created attachment 37111 [details, diff]
Modifies ivtv to work with kernel interface >=2.6.8-rc3

Needs to be applied only for 2.6.8-rc3 and later kernels.
Comment 13 Maurice van der Pot (RETIRED) gentoo-dev 2004-08-09 12:21:32 UTC
Created attachment 37112 [details]
New ebuild that conditionally applies syscallh patch

This ebuild should fix the last problem I mentioned.
Comment 14 Maurice van der Pot (RETIRED) gentoo-dev 2004-08-11 02:33:59 UTC
Created attachment 37203 [details]
ebuild that gets rid of error message during emerge

Fixed one more error during build. More of a cosmetic thing really.
Comment 15 Brian Jackson (RETIRED) gentoo-dev 2004-08-26 13:40:46 UTC
fixed in -r4