perl - 我如何最好地处理 Perl/Tk 所需的补丁?

标签 perl tk perl-module

我正在为具有自己的常驻 Perl 和模块安装的应用程序对 Perl/Tk 进行更改(因此我们可以将应用程序放入并运行)。

我发现了一个我遇到的问题,我偶然发现了我需要的补丁:http://osdir.com/ml/lang.perl.tk/2004-10/msg00030.html

错误确认。这是针对 Tk804.027 的补丁:
--- Tk-804.027/pTk/mTk/generic/tkEntry.c Sat Mar 20 19:54:48 2004 +++ Tk-804.027-perl5.8.3d/pTk/mTk/generic/tkEntry.c Tue Oct 19 22:50:31 2004 @@ -3478,6 +3478,18 @@ Tcl_DStringFree(&script); #else + switch (type) { + case VALIDATE_INSERT: + type = 1; + break; + case VALIDATE_DELETE: + type = 0; + break; + default: + type = -1; + break; + } + code = LangDoCallback(entryPtr->interp, entryPtr->validateCmd, 1, 5, "%s %s %s %d %d", new, change, entryPtr->string, index, type); if (code != TCL_OK && code != TCL_RETURN) {
问候,
奴隶

我想应用这个补丁,或者如果有更新版本的 Perl/Tk 模块我可以升级到其中包含这个补丁,不需要我更改 Perl 的版本,就这样做。

以下是我可以从该应用程序的安装中找到的内容:

perl -v = 5.8.4
$Tk::version = '8.4'
$Tk::patchlevel = '8.4'
$Tk::VERSION = '804.027'

所以..

1a) 如果有更新的 Tk VERSION 包含上面链接中的补丁,我如何只升级该应用程序的特定 Perl 安装位置中的那个模块?

1b) 我如何知道该升级是否与 Perl 5.8.4 兼容(此时我不想升级 perl)

2)如果没有,我该如何应用该链接中定义的补丁?

最佳答案

一、查看CPAN看看Tk的当前版本是什么是。在此响应时,它是 804.028,因此您的错误可能已被修复。您可以查看Tk bug queue查看报告的错误的状态,尽管我不知道您的特定错误是否曾进入队列。您也可以查看Changes文件以查看是否在此处提及您的问题。

如果您没有看到任何具体内容,您可能会注意到您引用的消息的作者是 Tk 的维护者,因此很可能已经应用了补丁。 :)

Tk 是一个分布。您无法升级单个模块。

查看Perl/Platform Version Matrix查看哪些 Tk 版本在哪些平台上以及在哪些 Perl 版本下工作。

如果您绝对必须只应用这一更改,请下载您正在使用的 Tk 版本的源代码,应用补丁并重新构建它。

关于perl - 我如何最好地处理 Perl/Tk 所需的补丁?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2884816/

相关文章:

r - 在 MacBook Pro 上安装 Rcmdr 包时出现 Tcl Tk 库问题

python - 如何更改 Python 安装的 tk 版本?

perl - 如何跟踪 XS .so 文件?

perl - 如何查询 sqlite 的某些行,即将其分成页面(perl DBI)

perl - 我可以使用 MooseX::Declare 在类之外定义函数吗?

windows-7 - 在 Windows 下为 Tcl/Tk 开发创建一个功能齐全的环境

perl - 我应该将核心模块放在 Makefile.PL 的 PREREQ_PM 部分吗?

perl - 在 Test::More 中,是否可以测试一个以 exit() 结尾的子程序?

perl - 如何在 PERL 中输入 "Ctrl s"或 "Ctrl 1"

sql - 如何在 DBIx::Class 结果集搜索中检索每个组中的最新记录?