2. Windows平台编译与配置
任务目标
在Windows平台上,使用CMake与MSVC编译器从源码构建llama.cpp,并完成必要的环境变量配置,使llama-cli等可执行文件能够在任意目录下直接调用。
环境依赖
- Windows 10/11 64位
- Visual Studio 2022(含“使用C++的桌面开发”工作负载)
- CMake ≥ 3.14(可通过VS Installer或独立安装)
- Git(用于克隆仓库)
编译步骤
- 打开“x64 Native Tools Command Prompt for VS 2022”(开始菜单搜索),依次执行以下命令:
git clone https://github.com/ggerganov/llama.cpp.git
cd llama.cpp
cmake -B build -DCMAKE_BUILD_TYPE=Release -DLLAMA_CUBLAS=OFF
cmake --build build --config Release -j
说明:-DLLAMA_CUBLAS=OFF表示不使用NVIDIA GPU加速,仅CPU推理。若需GPU支持,请先安装CUDA Toolkit后改为-DLLAMA_CUBLAS=ON。
环境变量配置
编译完成后,将可执行文件目录加入系统PATH,以便全局调用:
setx PATH "%PATH%;%CD%\build\bin\Release"
若希望永久生效且不影响当前会话,也可通过“系统属性 → 环境变量”手动添加路径:你的仓库路径\build\bin\Release。
验证方法
重新打开一个新的命令提示符窗口(使环境变量生效),执行以下命令验证编译与配置是否成功:
llama-cli --help
若输出显示llama.cpp的版本信息及参数说明,则说明编译成功且环境变量配置正确。若提示“不是内部或外部命令”,请检查PATH路径是否包含build\bin\Release目录。
常见问题
- CMake找不到编译器:确保在“x64 Native Tools Command Prompt”中执行,而非普通CMD。
- 编译内存不足:可减少并行任务数,将
-j改为-j4或-j2。 - setx命令截断PATH:若原PATH过长,setx可能截断(限制1024字符)。此时建议手动在系统设置中添加路径。
完成以上步骤后,llama.cpp已在Windows上编译就绪,后续案例中的模型下载与推理调用均基于此环境。