Я новичок в ядре Linux. Я пытался установить заголовок Linux на Ubuntu. Я впервые попробовал
sudo apt-get install linux-headers-$(uname -r)
Однако, поскольку вывод $(uname -r)
равен 4.4.0-18362-Microsoft
, при установке выдается ошибка:
E: Unable to locate package linux-headers-4.4.0-18362-Microsoft
E: Couldn't find any package by glob 'linux-headers-4.4.0-18362-Microsoft'
E: Couldn't find any package by regex 'linux-headers-4.4.0-18362-Microsoft'
При поиске в Интернете я обнаружил, что заголовочные файлы linux не существуют в WSL. Поэтому я попробовал что-то, что рекомендуется в интернете, выполнив
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install linux-generic
sudo apt-get install linux-headers-generic
Тогда я получил успешную установку под /usr/src/linux-headers-4.15.0-51-generic
и /usr/src/linux-headers-4.15.0-51
. Тем не менее, моя команда использует make-файл, в котором каталог заголовков Linux упоминается с помощью $(uname -r)
, который по-прежнему 4.4.0-18362-Microsoft
. Поэтому, когда я делаю make
, он все равно выдает ошибку
can't read /usr/src/linux-headers-4.4.0-18362-Microsoft/...
Можно ли в любом случае установить заголовки или изменить $(uname -r)
так, чтобы я мог использовать $(uname -r)
для ссылки на каталог?