使用TDM GCC 5.1.0编译PDCurses36时出错

时间:2018-07-02 21:23:58

标签: c++ mingw pdcurses

尽管遵循README.md中提供的说明,但最近我一直在努力构建pdcurses36的源代码。无论出于何种原因,我总是会遇到相同的错误,因为“目标'pdcdisp.o'的配方失败”。这是错误提示:

C:\Program Files (x86)\CodeBlocks\pdcurs36\wincon>mingw32-make -f makefile
gcc -c -O2 -Wall -I.. ../wincon/pdcdisp.c
../wincon/pdcdisp.c: In function '_new_packet':
../wincon/pdcdisp.c:211:28: error: 'COMMON_LVB_UNDERSCORE' undeclared (first use in this function)
             mapped_attr |= COMMON_LVB_UNDERSCORE;
                            ^
../wincon/pdcdisp.c:211:28: note: each undeclared identifier is reported only once for each function it appears in
../wincon/pdcdisp.c:213:28: error: 'COMMON_LVB_GRID_LVERTICAL' undeclared (first use in this function)
             mapped_attr |= COMMON_LVB_GRID_LVERTICAL;
                            ^
../wincon/pdcdisp.c:215:28: error: 'COMMON_LVB_GRID_RVERTICAL' undeclared (first use in this function)
             mapped_attr |= COMMON_LVB_GRID_RVERTICAL;
                            ^
makefile:94: recipe for target 'pdcdisp.o' failed
mingw32-make: *** [pdcdisp.o] Error 1

这些是我发布给命令提示符的命令:

set PDCURSES_SRCDIR = C:\...\pdcurs36

path = C:\...\CodeBlocks\MinGW\bin

cd C:\...\pdcurs36\wincon

mingw32-make -f Makefile

我当前正在使用TDM GCC 5.1.0(代码块17.12的二进制版本提供了此功能)和pdcurs36.zip from the repository provided from the official site。我的操作系统是Windows 10。

任何帮助将不胜感激。

编辑 我的意思是代码块的17.12版本

1 个答案:

答案 0 :(得分:0)

我对评论的回复不足,但是您可能对pdcdisp.c的this PDCurses commit感兴趣。

  

警告旧的编译器;用数字替换COMMON_LVB_ *   安抚一些旧的编译器。在西蒙·索比施之后。

看起来像GCC 5.1.0只是没有定义这些宏,因此它们对值进行了硬编码:

return db.Familiies.Where(x => x.FuID == id).ToList();