我是一个Linux内核的新手。我试着在ubuntu上安装Linux header。我第一次尝试
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'
通过在互联网上搜索,我发现WSL上不存在linux头文件。因此我尝试了一些在互联网上推荐的东西,通过做
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
下进行了安装。然而,我的团队使用了一个makefile,其中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)
来引用该目录?
发布于 2021-01-26 20:37:25
创建从/usr/src/linux-headers-4.15.0-51-generic到/usr/src/linux-headers-4.4.0-18362-Microsoft/的符号链接
sudo ln -s /usr/src/linux-headers-4.15.0-51-generic /usr/src/linux-headers-4.4.0-18362-Microsoft
发布于 2019-06-19 19:01:47
我使用的是Ubuntu 18.04.2 LTS,也遇到了类似的问题--但不是微软:
E: Unable to locate package linux-headers-4.15.0-51-generic-generic
E: Couldn't find any package by glob 'linux-headers-4.15.0-51-generic-generic'
E: Couldn't find any package by regex 'linux-headers-4.15.0-51-generic-generic'
在我这样做后,我的工作很好,如下所示:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install linux-generic
sudo apt-get install linux-headers-$(uname -r)
https://stackoverflow.com/questions/56586840
复制相似问题