Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
kann s2-liplianin nicht compilieren
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
FrancisA
Tux's lil' helper
Tux's lil' helper


Joined: 17 Dec 2010
Posts: 111

PostPosted: Thu Dec 30, 2010 10:13 am    Post subject: kann s2-liplianin nicht compilieren Reply with quote

Hallo,

Vorbemerkung: habe nicht den kernel von gentoo, sondern den von kernel sources git.

Code:

/mnt/src/s2-liplianin/v4l/dvb_frontend.c: In function 'dvb_frontend_stop':
/mnt/src/s2-liplianin/v4l/dvb_frontend.c:718: error: implicit declaration of function 'init_MUTEX'
make[3]: *** [/mnt/src/s2-liplianin/v4l/dvb_frontend.o] Error 1
make[2]: *** [_module_/mnt/src/s2-liplianin/v4l] Error 2
make[2]: Leaving directory `/mnt/src/linux-2.6'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/mnt/src/s2-liplianin/v4l'
make: *** [all] Error 2


Ich habe schon viel gegoogelt (und das Problem trat auch in anderen Projekten des öfteren auf), aber eine Lösung fand ich nicht.
auch nicht das ersetzen druch semaphore_init (das bringt die gleiche fehlermeldung mit der implicit declaration)

Die Kernelsourcen sind linux 2.6.37-rc8+, das liplianin habe ich direkt aus der repository.
Back to top
View user's profile Send private message
boris64
Veteran
Veteran


Joined: 04 Oct 2003
Posts: 1770
Location: vechelde / peine

PostPosted: Thu Dec 30, 2010 2:46 pm    Post subject: Reply with quote

Könnte das hier vielleicht hilfreich sein?
http://kerneltrap.org/mailarchive/git-commits-head/2009/12/2/12416

Eventuell fehlt ja nur ein kleines #include, wobei dieser Patch
ja schon etwas älter (~Dez.2009) zu sein scheint
_________________
boris64.net 200x / visit my desktop / try these tiny kernel patches ;)
Back to top
View user's profile Send private message
FrancisA
Tux's lil' helper
Tux's lil' helper


Joined: 17 Dec 2010
Posts: 111

PostPosted: Thu Dec 30, 2010 3:38 pm    Post subject: Reply with quote

boris64 wrote:
Könnte das hier vielleicht hilfreich sein?
http://kerneltrap.org/mailarchive/git-commits-head/2009/12/2/12416

Eventuell fehlt ja nur ein kleines #include, wobei dieser Patch
ja schon etwas älter (~Dez.2009) zu sein scheint


Danke das ist das komische, wenn ich include semaphore einbinde und semaphore_init aufrufe, dann beklagt er auch, dass er das implicit....

Eigenartigerweise habe ich gelesen, dass das init_mutex in neueren Versionen des Kernels als "deprecated" gilt. Ich habe vom Source überall das init_mutex auskommentiert, und hat es dann einwandfrei kompiliert. Die TV Karte geht jedoch noch nicht

Code:

sudo /sbin/modprobe -v dvb-usb-pctv452e
insmod /lib/modules/2.6.37-rc8+/kernel/drivers/media/dvb/ttpci/ttpci-eeprom.ko
insmod /lib/modules/2.6.37-rc8+/kernel/drivers/media/dvb/dvb-core/dvb-core.ko
WARNING: Error inserting dvb_core (/lib/modules/2.6.37-rc8+/kernel/drivers/media/dvb/dvb-core/dvb-core.ko): Invalid module format
insmod /lib/modules/2.6.37-rc8+/kernel/drivers/media/dvb/dvb-usb/dvb-usb.ko
insmod /lib/modules/2.6.37-rc8+/kernel/drivers/media/dvb/dvb-usb/dvb-usb-pctv452e.ko


:( Was kann da falsch gelaufen sein?
Back to top
View user's profile Send private message
FrancisA
Tux's lil' helper
Tux's lil' helper


Joined: 17 Dec 2010
Posts: 111

PostPosted: Fri Dec 31, 2010 8:08 am    Post subject: Reply with quote

3 Gedanken noch

1) Wie kann man bei so einen Fehler noch mehr Informationen erhalten (ausser invalid module format). Damit könnte man mehr eingrenzen oder unternehmen

Nachtrag: modinfo wird wahrscheinlich für das zuständig sein

Code:

franz@localhost /mnt/src/s2-liplianin_gentoo $ /sbin/modinfo dvb_core
filename:       /lib/modules/2.6.37-rc8+/kernel/drivers/media/dvb/dvb-core/dvb-core.ko
license:        GPL
author:         Marcus Metzler, Ralph Metzler, Holger Waechtler
description:    DVB Core Driver
depends:       
vermagic:       2.6.37-rc8+ SMP mod_unload 686
parm:           dvb_net_debug:enable debug messages (int)
parm:           frontend_debug:Turn on/off frontend core debugging (default:off). (int)
parm:           dvb_shutdown_timeout:wait <shutdown_timeout> seconds after close() before suspending hardware (int)
parm:           dvb_force_auto_inversion:0: normal (default), 1: INVERSION_AUTO forced always (int)
parm:           dvb_override_tune_delay:0: normal (default), >0 => delay in milliseconds to wait for lock after a tune attempt (int)
parm:           dvb_powerdown_on_sleep:0: do not power down, 1: turn LNB voltage off on sleep (default) (int)
parm:           dvb_mfe_wait_time:Wait up to <mfe_wait_time> seconds on open() for multi-frontend to become available (default:5 seconds) (int)
parm:           cam_debug:enable verbose debug messages (int)
parm:           dvb_demux_tscheck:enable transport stream continuity and TEI check (int)
parm:           dvb_demux_speedcheck:enable transport stream speed check (int)
parm:           debug:Turn on/off debugging (default:off). (int)
parm:           dvbdev_debug:Turn on/off device debugging (default:off). (int)


Aber es wird auch hier nicht ersichtlich, warum er das nicht laden will. Invalid Format sagt er AFAIK, wenn gegen die falsche Kernelversion kompiliert wurde.

2) ich habe immer make clean (beim liplian) vorher aufgerufen. Kann es sein, dass etwas noch nicht gelöscht wurde und deswegen falsche/alte libs oder so dazulinkt?

3) Kann es sein, dass im Kernel selbst irgendetwas beim make menuconfig noch nicht dabei ist, dass das dvb_core braucht? d.h. Kernel dann nochmals vorher erstellen?

der /usr/src/linux linkt auf die aktuellen Kernel sourcen

es gab dann noch (vielleicht war das der Grund):
Code:

  Building modules, stage 2.
  MODPOST 420 modules
WARNING: /mnt/src/s2-liplianin_gentoo/v4l/dvb-core: 'dvb_unregister_adapter' exported twice. Previous export was in vmlinux
WARNING: /mnt/src/s2-liplianin_gentoo/v4l/dvb-core: 'dvb_register_adapter' exported twice. Previous export was in vmlinux
WARNING: /mnt/src/s2-liplianin_gentoo/v4l/dvb-core: 'dvb_unregister_device' exported twice. Previous export was in vmlinux
...


Ich probierte einmal neben make clean auch noch make distclean vorher.

Hat auch nichts geänndert (immer noch invalid modul format)
Jetzt habe ich mir das mit dmesg nochmals angesehen:

Code:

[ 1000.814195] dvb_core: exports duplicate symbol dvb_unregister_adapter (owned by kernel)


Da habe ich noch was gefunden: http://lists-archives.org/video4linux/20577-twinhan-d-a-analog-tuner.html

"In such a case, in order to upgrade to the
Linuxtv supplied drivers, the user will have to rebuild the kernel
without static v4l-dvb driver support, and then install the Linuxtv
drivers as modules afterwards."

Das könnte ich noch probieren.

owned by kernel: Da hätte ich schon stutzig werden können.

Nun habe ich entfernt in menuconfig:

* Device drivers => Multimedia Support => DVB/ATSCEnable extended debug support weg
* Device drivers => Multimedia Support => DVB for Linux weg
* Device drivers => Multimedia Support => Video capture adapters => v4l usb devices weg

Hoffe das war nicht zuviel, dass dann die Webcam noch geht(?)
Back to top
View user's profile Send private message
FrancisA
Tux's lil' helper
Tux's lil' helper


Joined: 17 Dec 2010
Posts: 111

PostPosted: Fri Dec 31, 2010 6:14 pm    Post subject: Reply with quote

Oje, jetzt habe ich ein neues Probelm. Ich kann den Kernel nicht mehr compilieren. Ich denke, das make menuconfig im s2-liplianin verzeichnis hat ihm nicht gut getan. Irgendwas wurde da verändert, dass er nicht
mehr auf mein linux source verzeichnis zeigt.

Code:

franz@localhost /mnt/src/linux-2.6 $ sudo make
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  CC      init/initramfs.o
In file included from include/linux/kexec.h:8,
                 from init/initramfs.c:489:
include/linux/compat.h:17:5: warning: "LINUX_VERSION_CODE" is not defined
include/linux/compat.h:17:27: warning: "KERNEL_VERSION" is not defined
include/linux/compat.h:17:41: error: missing binary operator before token "("
...
Back to top
View user's profile Send private message
FrancisA
Tux's lil' helper
Tux's lil' helper


Joined: 17 Dec 2010
Posts: 111

PostPosted: Sat Jan 01, 2011 1:24 am    Post subject: Reply with quote

FrancisA wrote:
Oje, jetzt habe ich ein neues Probelm. Ich kann den Kernel nicht mehr compilieren. Ich denke, das make menuconfig im s2-liplianin verzeichnis hat ihm nicht gut getan. Irgendwas wurde da verändert, dass er nicht
mehr auf mein linux source verzeichnis zeigt.

Code:

franz@localhost /mnt/src/linux-2.6 $ sudo make
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  CC      init/initramfs.o
In file included from include/linux/kexec.h:8,
                 from init/initramfs.c:489:
include/linux/compat.h:17:5: warning: "LINUX_VERSION_CODE" is not defined
include/linux/compat.h:17:27: warning: "KERNEL_VERSION" is not defined
include/linux/compat.h:17:41: error: missing binary operator before token "("
...


Linux sourcen erneut von Repository geholt, jetzt gehts wieder. das make menuconfig von sa-liplianin hat mir einige links verändert. Ich brauchte nur DVB im Linux Kernel ausschalten, dann ging die Webcam wieder und dbv Unterstützung geht auch wieder.


Nachtrag: Device drivers => Multimedia Support => DVB for Linux (nur das)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum