У меня есть архив с исходным кодом: 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; следовательно, подробные инструкции приветствуются)
12.10
development
tools
n00b
источник
источник
Ответы:
Не копируйте мои команды, вы должны ввести их и использовать клавишу табуляции, потому что мое ядро может отличаться от вашего. Я объясняю игру игрой:
Откройте терминал и введите:
Это обновление предоставляет вашему компьютеру файлы, которые могут вам понадобиться. Но нет файлов для скачивания, только информация о том, что можно скачать. Если вы не сделали этого в первую очередь, у вас может не быть последней ссылки на обновления безопасности или последние версии программного обеспечения.
При вводе нажмите клавишу табуляции , чтобы завершить команду. Начните вводить команду, которая будет установлена
build-essential
. Как только вы доберетесь до этой остановки:Следующая часть, которая должна появиться, будет вашим ядром Linux. Итак, откройте другой терминал и введите это:
Вы должны увидеть что-то вроде этого:
Теперь вернитесь к другому терминалу и нажмите вкладку как тип. Вы должны увидеть всплывающее ядро. Выберите это.
Теперь введите пробел и добавьте build-essential (не забудьте использовать вкладку для завершения).
Теперь нажмите Enter, и загрузятся файлы, которые помогут вам скомпилировать код.
источник
uname
это команда, которая должна быть введена в командной строке. Так что, если вы откроете терминал и напечатаетеuname
его, выведите словоLinux
. В упомянутой вами команде вы найдете-r
. Это вариант дляuname
. Он дает указаниеuname
напечатать номер выпуска ядра. Таким образом, он в основном распечатает некоторые числа (например, 3.2.0-41-amd64).Вы должны ввести команду
как написано. Он
$(something)
сообщает вашей командной строке (лучше слово будет shell) выполнить командуsomething
и вставить вывод этой команды.Таким образом, в вашем
uname
случае (при условии, что число, которое я написал, является правильным, что может не быть в вашем случае), команда выполняетсяsudo apt-get install linux-headers-3.2.0-41-amd64 build-essential
. По сути, вы можете просто найти версию своего ядра и вставить ее вручную.Как вы видите, ни одна из ваших версий не верна. Решение выглядит немного иначе.
источник