Как мне установить средства разработки для 12.10?

14

У меня есть архив с исходным кодом: ap-kernelmodule-1.0.14-13.tar.gz я должен скомпилировать из него модуль ядра и получил указание установить инструменты разработки для моей версии Ubuntu (12.10). Формат такой:sudo apt-get install linux-headers-$(uname -r) build-essential

Вопрос № 1: что это uname?

(Когда я установил Ubuntu, я ввожу sharon в качестве моего имени, которое также является именем моей учетной записи. Каждый раз, когда я открываю окно терминала, sharon@sharon:появляются слова ) В зависимости от формата я должен ввести:

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

или

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

Вопрос № 2: Что из перечисленного является правильным?

(Я новичок в Linux и Ubuntu; следовательно, подробные инструкции приветствуются)

n00b
источник
Вам лучше поместить детали этого вопроса в другой аналогичный вопрос, который вы задавали. askubuntu.com/questions/232195/how-do-i-compile-kernel-modules
gertvdijk
Извините, я не хотел спамить. Я думал, что сделать сообщение для каждой подтемы будет более понятным. Не могли бы вы показать мне, как объединить эту тему с другой, указанной вами? Благодарю.
n00b

Ответы:

15

Не копируйте мои команды, вы должны ввести их и использовать клавишу табуляции, потому что мое ядро ​​может отличаться от вашего. Я объясняю игру игрой:

Откройте терминал и введите:

sudo apt-get update

Это обновление предоставляет вашему компьютеру файлы, которые могут вам понадобиться. Но нет файлов для скачивания, только информация о том, что можно скачать. Если вы не сделали этого в первую очередь, у вас может не быть последней ссылки на обновления безопасности или последние версии программного обеспечения.

При вводе нажмите клавишу табуляции , чтобы завершить команду. Начните вводить команду, которая будет установлена build-essential. Как только вы доберетесь до этой остановки:

sudo apt-get install linux-headers-

Следующая часть, которая должна появиться, будет вашим ядром Linux. Итак, откройте другой терминал и введите это:

uname -r

Вы должны увидеть что-то вроде этого:

3.2.0-23-generic

Теперь вернитесь к другому терминалу и нажмите вкладку как тип. Вы должны увидеть всплывающее ядро. Выберите это.

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

Теперь введите пробел и добавьте build-essential (не забудьте использовать вкладку для завершения).

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

Теперь нажмите Enter, и загрузятся файлы, которые помогут вам скомпилировать код.

cxx6xxc
источник
@ cxx6xxc: Спасибо за то, что ты ангел. Я очень ценю, что вы нашли время напечатать такие подробные инструкции. Желаю вам и вашим близким счастливого Рождества.
n00b
@ cxx6xxc: Извините, но я не совсем понимаю, что вы имели в виду, когда набираете текст, нажмите клавишу табуляции, чтобы завершить команду. Видите ли, при нормальных обстоятельствах, когда я печатаю, мигающий курсор автоматически перемещается вправо (моя языковая клавиатура - американский английский, поэтому курсор перемещается слева направо).
n00b
@ cxx6xx: Можно ли открывать более одного окна терминала одновременно? Приведет ли одновременное открытие более одного окна терминала к сбою Ubuntu или к краху?
n00b
Тайна вкладок: bogojoker.com/unix/tricks/autocomplete.html
cxx6xxc
Ubuntu не запутается. Ubuntu - это просто набор файлов и каталогов на диске. Когда к кому-то обращаются, чтобы написать, оно блокируется, поэтому не может возникнуть путаница. Несколько человек, читающих одно и то же, не могут повредить, все просто по очереди. Все остальное - приложения, которые заполняют живую память. Это не может создать путаницу, потому что они не могут войти в пространство друг друга в живой памяти. Все может стать медленным, потому что процессор нуждается в небольшом толчке, а в секунду - только очень много, но это все.
cxx6xxc
8

unameэто команда, которая должна быть введена в командной строке. Так что, если вы откроете терминал и напечатаете unameего, выведите слово Linux. В упомянутой вами команде вы найдете -r. Это вариант для uname. Он дает указание unameнапечатать номер выпуска ядра. Таким образом, он в основном распечатает некоторые числа (например, 3.2.0-41-amd64).

Вы должны ввести команду

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

как написано. Он $(something)сообщает вашей командной строке (лучше слово будет shell) выполнить команду somethingи вставить вывод этой команды.

Таким образом, в вашем unameслучае (при условии, что число, которое я написал, является правильным, что может не быть в вашем случае), команда выполняется sudo apt-get install linux-headers-3.2.0-41-amd64 build-essential. По сути, вы можете просто найти версию своего ядра и вставить ее вручную.

Как вы видите, ни одна из ваших версий не верна. Решение выглядит немного иначе.

QBi
источник
Я надеюсь, что это помогло получить ответ на ваш вопрос. Если да, пожалуйста, примите это как решение. ;-)
qbi
Спасибо, я полагаю, вы ответили на мой вопрос. Так какую кнопку я должен нажать, чтобы сообщить форуму, что на мой вопрос ответили? Оттуда, где я сейчас нахожусь, есть только 2 кнопки: «Добавить комментарий» и «Ответить на вопрос».
n00b
С левой стороны есть стрелки вверх и вниз, а внизу вы найдете галочку (✓). Если вы нажмете на это, вы принимаете ответ как принятый. Пожалуйста, смотрите также описание на askubuntu.com/faq#howtoask
qbi
@ Qbi: Большое спасибо. И счастливого Рождества вам и вашим близким.
n00b