Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Jak w tytule, nie mogę nic skompilować pod nowym kernelem.
Chcę skompilować i zainstalować nowy kernel oraz pakiety linux-headers i linux-source. Gdyby to nie było takie czasochłonne siedziałbym cicho i i sam szukał rozwiązania, ale kompilacja kernela trwa u mnie parę godzin. O co chodzi.
[b]Sytuacja wyjściowa.[/b]
Samodzielnie kompilowany kernel:
2.6.15.aisa.1.0
w /usr/src mam min.
linux-headers-2.6.15.aisa.1.0
linux-source-2.6.15.aisa.1.0
nie ma dowiązania [i]linux[/i]
w /lib/modules//2.6.15.aisa.1.0 mam min.
[i]build[/i] dowiązanie /usr/src/inux-headers-2.6.15.aisa.1.0
[i]source[/i] dowiązanie do /usr/src/linux-source-2.6.15.aisa.1.0
Kompilacja czegokolwiek przebiega na tym kernelu bezproblemowo.
[b]Co robię dalej.[/b]
Instaluję deb-a z linux-source-2.6.17, rozpakowuję archiwum do /usr/src
nie robię dowiązania [i]linux[/i], zapomniałem o nim, dalej
cd linux-source-2.6.17
gzip -dc /home/suncez/supermount-2.2.0-2.6.17.6-madgus_gcc34.patch.gz | patch -p1
make menuconfig
make-kpkg clean
make-kpkg --initrd --append-to-version=.aisa.2.0 --revision=.aisa.2.0 kernel_image
Teraz długa kompilacja i potem
dpkg -i linux-image-2.6.17.aisa.2.0_aisa.2.0_i386.deb
uruchamiam system na nowym kernelu, robię
make-kpkg --initrd --append-to-version=.aisa.2.0 --revision=.aisa.2.0 kernel_source
make-kpkg --initrd --append-to-version=.aisa.2.0 --revision=.aisa.2.0 kernel_headers
Przed ich instalacją sprawdzam czy mogę coś w systemie skompilować, nie mogę (przykład błędu niżej).
W /lib/modules/2.6.17.aisa.2.0 mam dowiązania [i]build i source[/i] wskazujące na źródła z których kompilowałem nowy kernel
Instaluję te pakiety, robię dowiązania [i]build i source[/i] w /lib/modules/2.6.17.aisa.2.0 na wzór tego co mam dla starszego kernela.
Ponownie próbuję skompilować np. sterowniki dla karty wifi, które kompilowałem już dziesiątki razy. A tu zamiast kompilacji mam usuwanie czy też przenoszenie ich plików źródłowych. Dlaczego tak się dzieje?
aisa:/home/suncez/rtl8180-sa2400-dev# make make -C /lib/modules/2.6.17.aisa.2.0/build SUBDIRS=/home/suncez/rtl8180-sa2400-dev MODVERDIR=/home/suncez/rtl8180-sa2400-dev modules make[1]: Wejście do katalogu `/usr/src/linux-source-2.6.17' rm: nie moďż˝na usun�� `/home/suncez/rtl8180-sa2400-dev/CVS': Jest katalogiem make[1]: *** [crmodverdir] Błąd 1 make[1]: Opuszczenie katalogu `/usr/src/linux-source-2.6.17' make: *** [2.6] Błąd 2 aisa:/home/suncez/rtl8180-sa2400-dev#
Proszę o pomoc, poprzedni kernel zainstalowałem [b]chyba[/b] podobnie i wszystko działa. Gdzie robię błąd?
Zaraz spróbuje zrobić to dowiązanie [i]linux[/i] o którym zapomniałem, a nawet może usunę wszystkie z /lib/modules/2.6.15.aisa.1.0 i jeszcze raz kompilować.
Offline
Nie wiem czy te stery się kompilują z 2.6.17
http://bugs.gentoo.org/show_bug.cgi?id=137336
Offline
http://ks.lublin.pl/art.php?id=006
tu masz odpowiedz na twoje pytanie
Offline
Lekki szok, zaraz skompiluję coś innego na próbę, tylko ... musze zainstalować te nowe deb-y - dobrze że ich nie usuwałem. Napiszę o efektach.
Dziękuję za odpowiedź, siedzę przy tym od rana i już mam trochę dość.
Dopisane.
Wolę kompilację metodą debiana, pakiety mogę potem w razie potrzeby wiele razy instalować, dziękuję za info.
Offline
Jam mam taką taktykę, że jak się coś nie chce na danym kernelu kompilować, to najpierw sprawdzam, czy ktoś inny nie ma/miał podobnego problemu. Jeśli jakieś moduły nie są w źródłach kernela to często się zdarza, że są problemy z instalacją z nowszymi wersjami. Np. lirc nie chciał mi się kompilować na 2.6.18-rc, więc poszukałem i znalazłem łatkę, która to poprawiła (znaczy lirca poprawiła).
Offline
[b]czadman[/b] uratowałeś mi tę noc, pakiety, które robiłem są w porządku, problem jest ze sterownikami dla karty, inne rzeczy się kompilują.
O ile wiem, to jest od dawna ostatnia wersja tych sterowników. Spróbuję ndiswrappera, ale marne szanse, odkąd mój ISP zmienił urządzenie AP nie mogłem się na nim zalogować (pod innymi dystrybucjami).
Nawet mi do głowy nie przyszło, że to sterowniki, a powinno, bo ich poprzednia stabilna wersja miała kłopoty z gcc 4, ... zmęczenie.
Tak mało mam do roboty w systemie, że juz samo odświeżenie informacji jak kompilować metodą debiana zajęło mi trochę, a lirc, a konkretnie moduły dev i gpio i mnie czeka na nowym kernelu.
Jeszcze raz dziękuję, jutro popatrzę co z tym mogę dalej zrobić.
Offline
Jeszcze raz dziękuję, jutro popatrzę co z tym mogę dalej zrobić.[/quote]
Na pewno warto zajrzeć w linka do forum, który jest na stronie błędu.
[url=http://www.debian.org/][img]http://www.debian.org/logos/openlogo-nd-50.png[/img][/url]
Offline
Zajrzałem, naniosłem poprawki i działa. Poprawiałem pliki ręcznie, bo nie umiem robić patchy, na szczęście niewiele tego było.
W czasie kompilacji jest jeszcze jedno ostrzeżenie, ale całość idzie dalej. Poszukam jeszcze na forum projektu może i to zostało już usunięte.
CC [M] /home/suncez/Desktop/cur/rtl8180-sa2400-dev/r8180_wx.o /home/suncez/Desktop/cur/rtl8180-sa2400-dev/r8180_wx.c:940: warning: excess elements in struct initializer /home/suncez/Desktop/cur/rtl8180-sa2400-dev/r8180_wx.c:940: warning: (near initialization for 'r8180_wx_handlers_def')
Link do poprawionych sterowników dla kart na chipie RTL8180L
[url=http://suncez.e-data.net.pl/temp/rtl8180-sa2400-dev-fix.for2.6.17.tar.gz]rtl8180-sa2400-dev-fix.for2.6.17.tar.gz[/url]
Offline
Zajrzałem, naniosłem poprawki i działa. Poprawiałem pliki ręcznie, bo nie umiem robić patchy, na szczęście niewiele tego było.[/quote]
Zrobienie łatki nie jest trudne. Archiwizujesz stary kod np. pod nazwą sterownik.old, zmieniasz co trzeba w plikach w katalogu sterownik i robisz:
[color=blue]poprawka[/color]: ale żem palnął z tym patch'em.
Kod:
diff -Nura sterownik.old sterownik > patch.diffWarto znać takie podstawy.
http://www.cpqlinux.com/patch.html
[url=http://www.debian.org/][img]http://www.debian.org/logos/openlogo-nd-50.png[/img][/url]
Offline
Dzięki, zapoznam się. Tymczasem mam czarną serię swojego gapiostwa.
Zapomniałem o --x-module-path=/usr/lib/xorg/modules/. Potem okazało się, że to już nie wystarcza, musiałem spaczować sterowniki 8178 i dopiero poszła nvidia. Jeszcze lirc, he, he, potem przerwa, bo stanowczo coś mi nie idzie, a szkoda czasu i zdrowia.
Dopisane.
Przy lircu poległem, pacze, cvs itp. a moduły gpio i dev nie dają się skompilować. Kolejny cały dzień...
Dopisane.
Zwycięstwo! Oprócz zastosowania patcha musiałem troszkę pokombinować. Wyszedłem z założenia, że wszystko co potrzebne do kompilacji powinno być dostępne. Przecież na kernelu 2.6.15 ten lirc-0.8.0 kompilował mi się dobrze.
Parę katalogów i plików z linux-source umieściłem w linux-headers i moduły się kompilowały.
Jak próbowałem skierować dowiązanie build z linux-headers na linux-source, bo tam były potrzebne pliki, próba kompilacji kończyła się furą błędów. Niewiele pomagało też dowiązanie /usr/src/linux, było potrzebne, ale...
Najważniejsze, że mogę wygodnie sterować pilotem w systemie, ha!
Offline
Time (s) | Query |
---|---|
0.00011 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00095 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.145.109.144' WHERE u.id=1 |
0.00084 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.145.109.144', 1732832486) |
0.00042 | SELECT * FROM punbb_online WHERE logged<1732832186 |
0.00053 | SELECT topic_id FROM punbb_posts WHERE id=40101 |
0.00097 | SELECT id FROM punbb_posts WHERE topic_id=5129 ORDER BY posted |
0.00073 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=5129 AND t.moved_to IS NULL |
0.00008 | SELECT search_for, replace_with FROM punbb_censoring |
0.00082 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=5129 ORDER BY p.id LIMIT 0,25 |
0.00094 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=5129 |
Total query time: 0.00643 s |