Jak zainstalować narzędzia programistyczne dla 12.10?

14

Mam źródłowy plik archiwalny: ap-kernelmodule-1.0.14-13.tar.gz muszę z niego skompilować moduł jądra i poinstruowano go, aby zainstalować narzędzia programistyczne dla mojej wersji Ubuntu (12.10). Format to:sudo apt-get install linux-headers-$(uname -r) build-essential

Pytanie nr 1: co to jest uname?

(Kiedy instaluję Ubuntu, wpisuję sharon jako swoje imię i które jest również nazwą mojego konta. Ilekroć otwieram okno terminala, sharon@sharon:pojawiają się słowa ) W zależności od formatu powinienem wpisać:

sudo apt-get install linux-headers-$(sharon -r) build-essential

lub

sudo apt-get install linux-headers-$sharon -r build-essential

Pytanie nr 2: Które z powyższych jest prawidłowe?

(Jestem nowy w Linuksie i Ubuntu; dlatego szczegółowe instrukcje są mile widziane)

n00b
źródło
Lepiej przełóż szczegóły tego pytania na inne podobne pytanie, które zadałeś. askubuntu.com/questions/232195/how-do-i-compile-kernel-modules
gertvdijk
Przepraszam, nie chciałem spamować. Pomyślałem, że napisanie postu dla każdego podtematu będzie jaśniejsze. Czy mógłbyś mi pokazać, jak połączyć ten temat z drugim wskazanym przez Ciebie tematem? Dzięki.
n00b

Odpowiedzi:

15

Nie kopiuj moich poleceń, musisz je wpisać i użyć klawisza Tab, ponieważ moje jądro może być inne niż twoje. Wyjaśniam zabawę po zabawie:

Otwórz terminal i wpisz:

sudo apt-get update

Ta aktualizacja zapewnia komputerowi listę potrzebnych plików. Ale nie można pobierać plików, tylko informacje o tym, co można pobrać. Jeśli nie zrobiłeś tego wcześniej, możesz nie mieć najnowszego linku do aktualizacji zabezpieczeń lub najnowszych wersji oprogramowania.

Podczas pisania naciśnij klawisz Tab , aby zakończyć polecenie. Zacznij pisać polecenie, które zostanie zainstalowane build-essential. Gdy dotrzesz tak daleko:

sudo apt-get install linux-headers-

Następną częścią, która powinna się pojawić, będzie twoje jądro Linuksa. Otwórz inny terminal i wpisz:

uname -r

Powinieneś zobaczyć coś takiego:

3.2.0-23-generic

Teraz wróć do drugiego terminala i naciśnij klawisz tab jako typ. Powinieneś zobaczyć wyskakujące jądro. Wybierz ten.

sudo apt-get install linux-headers-3.2.0-23-generic

Teraz wpisz spację i dodaj niezbędne do kompilacji (nie zapomnij użyć karty do ukończenia).

sudo apt-get install linux-headers-3.2.0-23-generic build-essential

Teraz naciśnij Enter, a pliki zostaną pobrane, aby pomóc Ci skompilować kod.

cxx6xxc
źródło
@ cxx6xxc: Dzięki za bycie aniołem. Naprawdę doceniam twój czas poświęcony na napisanie tak szczegółowych instrukcji. Niech ty i twoi bliscy życzycie Wesołych Świąt.
n00b
@ cxx6xxc: Przepraszam, ale nie do końca rozumiem, co miałeś na myśli mówiąc „Pisząc, naciśnij klawisz Tab, aby zakończyć polecenie”. Widzisz, w normalnych okolicznościach, kiedy piszę, migający kursor automatycznie przesuwa się w prawo (moja klawiatura językowa to angielski amerykański, więc kursor przesuwa się od lewej do prawej).
n00b
@ cxx6xx: Czy jednoczesne otwieranie więcej niż jednego okna terminala jest w porządku? Czy otwarcie więcej niż jednego okna terminala jednocześnie spowoduje, że Ubuntu będzie zdezorientowany lub doprowadzi do awarii?
n00b
The Tab Mystery: bogojoker.com/unix/tricks/autocomplete.html
cxx6xxc 24.12.12
Ubuntu się nie pomyli. Ubuntu to tylko kilka plików i katalogów na dysku pamięci. Kiedy ktoś ma dostęp do pisania, jest zablokowany, więc nie może się zdarzyć zamieszanie. Kilka osób czytających to samo nie może zranić, wszyscy po prostu na zmianę. Cała reszta to aplikacje wypełniające pamięć na żywo. To nie może powodować zamieszania, ponieważ nie mogą wejść sobie w przestrzeń w pamięci na żywo. Sprawy mogą się spowolnić, ponieważ każdy potrzebuje małego popchnięcia procesora i jest tylko tyle popychania na sekundę, ale to wszystko.
cxx6xxc
8

unameto polecenie, które należy wprowadzić w wierszu polecenia. Więc jeśli otworzysz terminal i wpiszesz uname, wypisze słowo Linux. W poleceniu, o którym wspomniałeś, znajdziesz -r. To jest opcja na uname. Nakazuje unamewydrukowanie numeru wydania jądra. Więc w zasadzie wypisze niektóre liczby (jak 3.2.0-41-amd64).

Powinieneś wpisać polecenie

sudo apt-get install linux-headers-$(uname -r) build-essential

jak to jest napisane. $(something)Opowiada swoją poleceń (lepszym słowem byłoby shell), aby wykonać polecenie somethingi wprowadzić dane wyjściowe tego polecenia.

Tak więc w twoim unameprzypadku (zakładając, że liczba, którą napisałem, jest poprawna, co może nie być w twoim przypadku), wykonywanym poleceniem jest sudo apt-get install linux-headers-3.2.0-41-amd64 build-essential. Zasadniczo możesz po prostu poszukać wersji jądra i wstawić ją ręcznie.

Jak widać, żadna z twoich wersji nie jest poprawna. Rozwiązanie wygląda nieco inaczej.

qbi
źródło
Mam nadzieję, że pomogło to uzyskać odpowiedź na twoje pytanie. Jeśli tak, zaakceptuj to jako rozwiązanie. ;-)
qbi 23.12.12
Dzięki, wierzę, że odpowiedziałeś na moje pytanie. Który przycisk powinienem kliknąć, aby poinformować forum, że odpowiedź na moje pytanie? Skąd jestem teraz, są tylko 2 przyciski: „Dodaj komentarz” i „Odpowiedz na pytanie”.
n00b
Po lewej stronie znajduje się strzałka w górę i w dół, a poniżej znajduje się znacznik wyboru (✓). Jeśli klikniesz, akceptujesz odpowiedź jako zaakceptowaną. Zobacz także opis na askubuntu.com/faq#howtoask
qbi
@ qbi: Wielkie dzięki. I Wesołych Świąt dla Ciebie i Twoich bliskich.
n00b