如何在VS2019中添加PDcurses?Make与nmake命令无法运行如何解决
VS2019配置PDCurses库及编译命令异常解决方案
注:GNU make不是VS自带工具,未单独安装MinGW等环境时无法运行是正常情况,VS下编译PDCurses不需要使用make,直接用VS自带的nmake即可。
一、修复nmake命令无法运行问题
nmake是Visual Studio内置的编译工具,无法运行基本是环境未正确加载导致,按以下步骤操作即可:
- 优先使用VS专属命令行工具:打开「开始菜单→Visual Studio 2019→x86 Native Tools Command Prompt for VS 2019」(若需编译64位版本则选择x64对应命令行),该环境已默认配置好nmake路径,输入
nmake /?能输出版本信息即为正常。 - 若需在自定义cmd中运行,手动将nmake路径添加到系统环境变量Path中,VS2019 Community版默认nmake路径参考:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\<你的MSVC版本号>\bin\Hostx86\x86,64位版本将最后一级目录的x86替换为x64即可。
二、编译PDCurses库
- 将PDCurses源码解压到本地无中文、无空格的路径下,例如
D:\dev\PDCurses - 打开上述VS Native Tools命令行,cd到PDCurses源码的wincon子目录:
cd D:\dev\PDCurses\wincon - 执行编译命令:
- 编译静态库运行:
nmake -f Makefile.vc - 编译动态库运行:
nmake -f Makefile.vc DLL=1
- 编译静态库运行:
- 编译完成后,wincon目录下会生成
pdcurses.lib,动态库编译还会额外生成pdcurses.dll,所需头文件curses.h、panel.h等存放在PDCurses源码根目录。
三、VS2019项目配置PDCurses
创建C/C++项目后,按以下步骤配置属性:
- 右键项目→属性→VC++目录:「包含目录」添加PDCurses源码根目录路径,「库目录」添加wincon子目录路径
- 右键项目→属性→C/C++→代码生成:运行库选择与编译PDCurses时匹配的版本,静态库编译的PDCurses对应Debug模式选「多线程调试(/MTd)」,Release模式选「多线程(/MT)」,不要选择带DLL后缀的选项避免链接冲突
- 右键项目→属性→链接器→输入→附加依赖项:添加
pdcurses.lib;如果编译的是动态库版本,需将pdcurses.dll放到生成的exe同目录下运行。
四、功能验证
使用以下测试代码验证配置是否成功:
#include <curses.h> int main() { initscr(); printw("Hello PDCurses!"); refresh(); getch(); endwin(); return 0; }
运行后正常弹出窗口输出对应内容即为配置成功。
内容的提问来源于stack exchange,提问作者Степан Адамов
相关产品推荐
相关产品推荐

