使用 cpan 安装 perl Tk 模块时出错

问题描述 投票:0回答:1

我尝试使用 cpan 安装 Tk,但出现错误。这是在 PC、Windows 10、Strawberry Perl 5.38.1 上

尝试 Tk 模块的基本安装,所有内容都会下载,makefile 会运行到某个点,但随后会因错误而终止。

我在命令行中使用它: cpan Tk

我收到此错误:

在 ../pTk/mTk/xlib/X11/Xlib.h:31 包含的文件中, 来自 tkWinPort.h:19, 来自 tkPort.h:32, 来自 tk.h:87, 来自 imgBMP.c:11: ../pTk/mTk/xlib/X11/X.h:182:34: 错误:数字常量之前有预期的标识符或“(” 182 | 182 #define ControlMask (1<<2) | ^ gmake[1]: *** [makefile:891: imgBMP.o] Error 1 gmake[1]: Leaving directory 'C:/perl/cpan/build/Tk-804.036-2/pTk' gmake: *** [makefile:1638: pTk/libpTk.a] Error 2 SREZIC/Tk-804.036.tar.gz C:\perl\c\bin\gmake.exe -- NOT OK Stopping: 'install' failed for 'Tk'.

这是 X.h 的代码部分,带有一些上下文(错误位于第 182 行):

    177: /* Key masks. Used as modifiers to GrabButton and GrabKey, results of QueryPointer,
    178:    state in various key-, mouse-, and button-related events. */
    179: 
    180: #define ShiftMask      (1<<0)
    181: #define LockMask       (1<<1)
    182: #define ControlMask        (1<<2)
    183: #define Mod1Mask       (1<<3)
    184: #define Mod2Mask       (1<<4)
    185: #define Mod3Mask       (1<<5)
    186: #define Mod4Mask       (1<<6)
    187: #define Mod5Mask       (1<<7)

我不确定编译器版本是什么;它是与 Strawberry Perl 一起安装的任何东西,因为我之前没有安装 gcc/gmake。

有什么建议吗?我没看到什么? (顺便说一句:我检查过 - 空白中没有隐藏任何时髦的字符) 或者 - 有更好的方法来安装 Tk 吗?如果您必须仔细检查并编辑源代码,这有点违背了 cpan 的目的。

perl cpan perltk
1个回答
0
投票

我自己也遇到了同样的错误。你找到解决办法了吗?

© www.soinside.com 2019 - 2024. All rights reserved.