我用nmake编译代码提示错误:fatal error U1052: 未找到文件“\makefile.def”,经过排查发现是代码依赖WDK,所以研究了一下WDK的安装步骤,下面是具体步骤:
请遵循以下步骤来为你的 VS2019 搭建完整的驱动开发环境:
第 1 步:确认 Visual Studio 2019 工作负载
首先,确保你的 VS2019 已经安装了 “使用 C++ 的桌面开发” 工作负载。这是基础。
-
打开 Visual Studio Installer。
-
找到你的 Visual Studio 2019 产品,点击 “修改”。
-
在 “工作负载” 选项卡中,确保 “使用 C++ 的桌面开发” 已被勾选。
-
点击 “修改” 按钮完成更改(如果需要)。
第 2 步:下载并安装 WDK
WDK 是通过一个独立的安装程序分发的,这个安装程序会智能地检测你的 VS2019 并进行集成。
-
访问官方下载页面:
这是最重要的步骤。前往微软官方文档页面:
下载 Windows Driver Kit (WDK) -
选择与你的目标系统匹配的版本:
-
页面会提供最新版本的 WDK 下载链接。
-
非常重要:你下载的 WDK 版本必须与你想要编译的驱动程序所目标运行的 Windows 版本兼容。例如,要开发 Win11 驱动,就下载最新的 WDK。
-
-
运行安装程序:
-
下载完成后,运行
wdksetup.exe
。 -
安装程序会自动检测到你系统已安装的 Visual Studio 2019。
-
它还会检查并可能会引导你安装所需版本的 Windows SDK(如果尚未安装)。WDK 依赖于特定版本的 Windows SDK,安装程序会帮你处理好这个依赖关系。
-
跟随安装向导的提示完成安装即可。
-
第 3 步:验证安装
安装完成后,通过最有效的方法验证:
-
打开 Visual Studio 2019。
-
点击 “创建新项目”。
-
在右侧的搜索框中输入
driver
进行搜索。 -
如果你能看到以下模板,说明 WDK 已成功安装并集成:
-
Kernel Mode Driver, Empty (KMDF)
-
Kernel Mode Driver (WDM)
-
User Mode Driver (UMDF)
-
Empty WDM Driver
https://learn.microsoft.com/zh-cn/windows-hardware/drivers/download-images/vs2019-new-project.png
-
如果你已经安装了WDK,但之前编译仍出错
考虑到你之前遇到的 nmake
和 makefile.def
的错误,即使安装了WDK,也请务必通过正确的入口启动开发环境:
不要直接从开始菜单打开 Visual Studio 2019 或普通的命令提示符。
-
在 开始菜单 中,找到 Visual Studio 2019 的文件夹。
-
在其中选择 “x64 Native Tools Command Prompt for VS 2019” 或 “Developer Command Prompt for VS 2019”。
-
对于驱动开发,强烈推荐使用
x64 Native Tools ...
。
-
-
在这个特殊的命令提示符窗口中,导航到你的驱动项目目录。
-
再次运行
nmake
命令。
这个特殊的命令提示符已经为你设置好了所有必要的环境变量(包括 PATH
, INCLUDE
, LIB
, NTMAKEENV
),所以它能找到 makefile.def
和你需要的所有编译器、链接器。
总结
项目 | 情况 |
---|---|
VS2019 默认带WDK吗? | 不带,需要额外安装。 |
如何安装? | 从 微软官方 Learn 站点 下载 wdksetup.exe 并运行。 |
安装关键点 | 安装程序会自动集成到已存在的 VS2019 中,并处理 Windows SDK 的依赖。 |
验证方法 | 在 VS2019 中创建新项目,能搜到驱动模板即为成功。 |
运行环境 | 必须使用 x64 Native Tools Command Prompt for VS 2019 来运行 nmake 或构建传统驱动项目。 |
遵循这个流程,你的 VS2019 就能完美地编译驱动程序项目了。