Автор Тема: Трябва ми актуализиран вариант на един хеадърс файл  (Прочетена 1242 пъти)

Teo

  • Напреднали
  • *****
  • Публикации: 169
    • Профил
Дистрибуцията е Дебиaн лени
Файла, който ми създава проблеми при компилация (на кафейне 0.8.8) е
/usr/include/linux/dvb frontend.h
Според писанията по форумите вариантите за актуализация били 2
- от директорията V4l-dvb, която я няма при мен, може би щото нямам качен драйвер за двб платката и не мога да намеря
- директно от ядрото - споменават версия 2.6.29-2 , а мойта е 2.6.26-2
При втория вариант нещата се получават при инсталиране на пакета linux-headers, в следствие на което файла може да се вземе от:
usr/src/linux-headers- _ _ _ _ -686/include/linux/dvb
Молбата ми е ако има някой с по-ново ядро да ми прати някак това файлче (7-8 кб) или да го постне някъде. Щото като гледам от предишната тема май не е много лесно за новобранец ъпдейтване на ядрото
« Последна редакция: Sep 18, 2010, 17:43 от Teo »
Активен

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
Лафа на годината  [_]3 Ако така ставаше, всеки щеше само файлчета да се раздават  ;D Ъпдейтни си кернела по нормалния начин без да го компилираш, после си свали компилираната кафейне и само я инсталирай без да компилираш. Аз не знам откъде такова голямо желание за компилиране.
Активен

Teo

  • Напреднали
  • *****
  • Публикации: 169
    • Профил
Не че изгарям от желание за компилиране, но не намерих *.deb вариант на 0.8.8, а от по-новите версии нямам хубави впечатления.
Мислех че ще може да се излъже make с това файлче, което евентуално можех да променя с данни за моя процесор и конфигурация
....
Все пак няправих вече няколко компилации, а никога не съм ъпдейтвал ядро и ми се струва че ще е по-сложно
Активен

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
Активен

Teo

  • Напреднали
  • *****
  • Публикации: 169
    • Профил
Това съм го минал и стигнах почти до края на "маке", когато ми светна червеното:
In file included from audioeditor.h:24,
                 from audioeditor.cpp:30:
channeldesc.h:104: error: 'fe_rolloff_t' does not name a type


и съответно подсказките, които касаят горното:

You need to update frontend.h in /usr/include/linux/dvb/
>>
>> eg.
>>
>> mv /usr/include/linux/dvb/frontend.h /usr/include/linux/dvb/frontend.h.bak
>> cp /???/v4l-dvb/linux/include/linux/dvb/frontend.h /usr/include/linux/dvb/frontend.h
>>
>> Then recompile. Obviously replace ??? with the path to your v4l-dvb source
>> files.


avevi ragione su frontend.h, nel senso che quello usato dal make di kaffeine (/usr/include/linux/dvb/frontend.h) è troppo vecchio e deve essere rimpiazzato con uno più recente; a tale proposito, si può utilizzare quello prelevato dal sorgente di un kernel 2.6.29.x. Supponendo, ad esempio, di aver installato il 2.6.29.2, si può procedere in questo modo (ovviamente, da root):

Codice: Seleziona tutto
    mv /usr/include/linux/dvb/frontend.h /usr/include/linux/dvb/frontend.h.bak
    cp /usr/src/linux-2.6.29.2/include/linux/dvb/frontend.h /usr/include/linux/dvb
Активен

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
./configure --with-extra-includes=/lib/modules/`uname -r`/source/include

където се намира frontend.h на dvb-то
/usr/src/s2api/s2-liplianin/linux/include/linux/dvb/frontend.h

http://www.linuxtv.org/wiki/index.php/Kaffeine
Активен

Teo

  • Напреднали
  • *****
  • Публикации: 169
    • Профил
Снощи върнах линукса в начално положение с CloneZila и сега ще трябва пак да напасвам библиотеки и туулове за да мога да опитам отново. Само ако може малко пояснения за този команден ред
./configure --with-extra-includes=/lib/modules/`uname -r`/source/include

интересува ме това uname -r  - точно това ли трябва да се пише или версията на кернела?
-в source/include - вероятно тук трябва да заместя с usr/include където ми е frontend.h (в поддиректорията /linux/dvb)
-в началото /lib/modules - така ли си остава?

Активен

b2l

  • Напреднали
  • *****
  • Публикации: 4786
  • Distribution: MCC Interim
  • Window Manager: - // - // -
  • ...sometimes I feel like screaming... || RTFM!
    • Профил
    • WWW
./configure --with-extra-includes=/lib/modules/`uname -r`/source/include

интересува ме това uname -r  - точно това ли трябва да се пише или версията на кернела?

Точно това трябва да се напише.
Код:
eclipse@eclipse:~$ uname -r
2.6.31-14-generic
И като го сложиш там в такива `` построфи, баш-а го интерпретира като команда и я изпълнява. Като резултата е горния пример който ти показвам.
Активен

"Човекът е въже, опънато между звяра и свръхчовека, въже над пропаст. Човекът е нещо, което трябва да бъде превъзмогнато." - Фр. Ницше

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
uname -r връща текущия ти кернел, моят е 2.6.35.4-desktop-1mnb и когато напишеш
/lib/modules/`uname -r`/source/include - `uname -r` се замества с 2.6.35.4-desktop-1mnb и така се получава пътят /lib/modules/2.6.35.4-desktop-1mnb/source/include/ ( при мен ) и този път трябва да е към  /linux/dvb/frontend.h, т.е. ти даваш път, на който като му се добави /linux/dvb и се достига до frontend.h. При мен нищо не се променя, мисля че и при теб трябва е така  ???
Активен

Teo

  • Напреднали
  • *****
  • Публикации: 169
    • Профил
Пробвах и по този начин - същата грешка.
Явно, след като не мога да намеря драйвер ще трябва да чета за ъпдейт на ядрото
Активен

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
Все пак може да пробваш, като направиш бакъп на текущият ти файл и сложиш този ->
http://tomoyo.sourceforge.jp/cgi-bin/lxr/source/include/linux/dvb/frontend.h или този ->
http://lxr.free-electrons.com/source/include/linux/dvb/frontend.h (тва е 2.6.35 ако не се компилира цъкни на 2.6.28, ако и там не ще мисля, че с по-долна не работи kaffeine 0.8.8 )
Мисля, че няма да стане, но може да пробваш :)
« Последна редакция: Sep 19, 2010, 11:39 от bvbfan »
Активен

Teo

  • Напреднали
  • *****
  • Публикации: 169
    • Профил
Благодаря за старанието bvbfan,
по-късно ще мога да пробвам и ще напиша резултата.
------
едит: мисля, че прескочи досегашната грешка, но сега ми излиза друг проблем:

dvbfe.c:570: error: request for member 'msg_len' in something not a structure or union
dvbfe.c:570: warning: assignment makes integer from pointer without a cast
dvbfe.c:571: error: request for member 'msg' in something not a structure or union
dvbfe.c:557: warning: unused variable 'reply'
make[7]: *** [dvbfe.lo] Error 1

едит2 - и това го минах, последно- след като копирах един фрагмент от по-новия файл в оригиналния ми компилацията напредна още малко и сега спира на:

dvbpanel.cpp: In member function 'void DvbPanel::finalZap(DvbStream*, ChannelDesc*)':
dvbpanel.cpp:1991: warning: unused variable 'i'
dvbpanel.cpp: In member function 'bool DvbPanel::getChannelList()':
« Последна редакция: Sep 19, 2010, 16:24 от Teo »
Активен

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
Няма оправия, защото сега започват да липсват методи, на някои имплементация, на други декларация и се стига до ъпдейтване на кернела   :)
http://www.ramoonus.nl/2009/03/linux-kernel-2629-installation-guide-for-ubuntu-and-debian-linux/
Щом ти трябва кернел 2.6.29-2 (така спомена в първият пост) ти предлагам да прегледаш този начин за обновяване
Активен

Teo

  • Напреднали
  • *****
  • Публикации: 169
    • Профил
Предполагам че няма значение че аз съм с Дебиан лени, а инструкцията е за убунту. Но за последно ми се ще още малко да се помъча по този обречен метод. Струва ми се че проблема вече не е във въпросния файл, а някъде пишеше че "unused variables" можело да се премахнат, но не беше обяснено как и откъде.
Активен