我的应用需要监控文件系统并在添加或更改文件时做出响应。我正在运行Python 3.3并阅读包列表,"观察者"看起来就像我需要的那样,除了https://pypi.python.org/pypi/watcher/0.2.1的所有安装可执行文件都是针对Python 3.2及更低版本以及针对Win32(我在Win64上)。我尝试使用pip和easy_install安装但出现错误"无法找到vcvarsall.bat"通过查看档案是非常重要的解决方案。任何有关安装观察程序或其他系统监视程序包的建议都将不胜感激。
答案 0 :(得分:2)
提到vcvarsall.bat意味着它正在尝试编译一些C或C ++代码并需要编译器。 Windows上python的默认编译器是MSVC,您也可以将MinGW用于大多数软件包,但是您需要安装其中一个并在路径上获取它们才能继续。
似乎你不能使用python3.2与python3.3编译的pyd,你没有遗漏任何东西,它也不适用于我。
我刚刚完成了使用mingw32的工作,一旦你弄清楚它就很简单了。如果您信任我,我会放置模块here的二进制副本,如果您下载它,请确保对其进行病毒扫描,因为它来自未修补的XP VM。另请注意,如果没有一些额外的库,它可能无法工作,但我没有第二台机器可以试用它。如果它不起作用,但是你得到了一个你缺少的库列表,我可以帮你找到它们。
要自己构建它,你可以使用msvc,(我对此一无所知)或mingw。你可以得到mingw here。浏览安装程序时,请确保至少安装C编译器和msys。你需要一个补丁版本的观察源,为编译器提供正确的参数,并使其与python3.3一起使用。你可以得到here。您需要自己编辑安装文件以更新mingw安装的位置,第19行和第20行是重要的。完成所有设置后,您应该可以拨打\Path\To\Python3\python setup.py build -cmingw32
,然后拨打\path\to\python3\python setup.py install
。如果它抱怨无法找到头文件(以.h结尾),请在您的计算机上搜索它并将其位置添加到第19行的列表中。如果ld.exe找不到库,请查找库名称,您希望文件以.a
结尾,将其位置添加到第20行的列表中,请注意每个字符串中需要-I
和-L
。完成后,您应该能够启动观察者。
请注意,它需要一个回调函数,其中只有2个参数比您提供的参数列表更多,并且如果您获得的参数数量错误则无法解释原因。