2

我的应用程序需要监视文件系统并在添加或更改文件时做出响应。我正在运行 Python 3.3 并阅读包列表,“watcher”看起来正是我所需要的,除了https://pypi.python.org/pypi/watcher/0.2.1上的所有安装可执行文件都适用于 Python 3.2 及以下版本和 Win32(我在 Win64 上)。我尝试使用 pip 和 easy_install 进行安装,但收到一个错误“无法找到 vcvarsall.bat”,通过查看档案很难解决。任何关于安装观察者或其他系统监控包的建议将不胜感激。

4

1 回答 1

2

提到 vcvarsall.bat 意味着它正在尝试编译一些 C 或 C++ 代码并且需要编译器。Windows 上 python 的默认编译器是 MSVC,您也可以对大多数软件包使用 MinGW,但您需要安装其中一个并将它们放在路径上才能继续。

看来您不能将用 python3.2 编译的 pyd 与 python3.3 一起使用,您没有遗漏任何东西,它也对我不起作用。

我刚刚完成了让它与 mingw32 一起工作的过程,一旦你弄清楚了它就非常简单。如果你相信我,我在这里放了一个模块的二进制副本,如果你下载它,请确保对它运行病毒扫描,因为它来自未打补丁的 XP VM。另请注意,如果没有一些额外的库,它可能无法工作,但我没有第二台机器可以试用它。如果它不起作用,但你得到了你缺少的库的列表,我可以帮你找到它们。

要自己构建它,您可以使用 msvc(我对此一无所知)或 mingw。你可以在这里得到mingw 。当您通过安装程序时,请确保至少安装 C 编译器和 msys。您将需要一个修补版本的观察程序源,为编译器提供正确的参数并使其与 python3.3 一起工作。你可以在这里得到。您需要自己编辑安装文件以更新您的 mingw 安装位置,第 19 行和第 20 行是重要的。\Path\To\Python3\python setup.py build -cmingw32完成所有设置后,您应该可以调用\path\to\python3\python setup.py install. 如果它抱怨找不到头文件(以 .h 结尾),请在您的计算机上搜索它并将其位置添加到第 19 行的列表中。如果 ld.exe 找不到库,请查找该库名称,你想要以 结尾的文件,将它的位置添加到第 20 行的列表中,.a注意你需要在每个字符串中。完成后,您应该能够启动观察程序。 -I-L

请注意,它需要一个回调函数,其参数比您提供的参数列表多 2 个参数,并且如果参数数量错误,它会失败,但不会解释为什么。

于 2013-06-03T18:07:02.257 回答