【发布时间】:2017-02-02 11:18:35
【问题描述】:
我尝试了好几个小时来解决这个问题。我从Disconnect 中找到了Apache-WebSocket,并决定尝试一下。说明推荐Scons。但是,为了能够使用 Scons,我还需要 Python。我安装了最新的 3.x+ Python,但是当我也安装了 Scons 并尝试构建模块时,它告诉我尚不支持 Python 3.x+。好的,我卸载了 Scons 和 Python,然后安装了 Python 2.7.7。
在我这样做之后,我遇到了更多的困难,因为在注册表中找不到 Python。经过搜索,我找到了this answer。我提取并执行了该文件。之后,Scons 工作了,但仍然无法安装该模块。
在查看 SConstruct 之后,我看到有一个 Apache 的硬编码路径,并且我已经修复了该路径。之后,我在文件夹中运行了以下命令:
scons install
但反应是这样的:
scons: Reading SConscript files ... scons: done reading SConscript files. scons: Building targets ... cl /Fomod_websocket.obj /c mod_websocket.c /nologo /O2 /MD /EHsc /W3 /DWIN32 /IC :\wamp\bin\apache\apache2.4.2\include 'cl' is not recognized as an internal or external command, operable program or batch file. scons: *** [mod_websocket.obj] Error 1 scons: building terminated because of errors.
我使用的是 Windows 8 和 Wamp。我应该怎么做才能解决我面临的问题?
编辑:
这个很棒的页面帮助我解决了 cl 的问题。我需要安装 Visual C++ 的常用工具,然后我需要运行
vcvarsall.bat x86
之后我执行了
scons install
它通过了上次失败的点。现在新的错误如下:
mod_websocket.so.manifest : general error c1010070: Failed to load and parse the manifest. The system cannot find the file specified. scons: *** [mod_websocket.so] Error 31 scons: building terminated because of errors.
【问题讨论】:
-
几个问题:哪个版本的 SCons?哪个版本的视觉工作室?在安装 scons 之前,您不必在系统上运行 vcvarsall.bat x86。 SCons 应该会找到已安装的 Visual Studio。
-
Scons 2.5.0. Visual Studio 2015。执行 vcvarsall.bat 时已经安装了 Scons
-
安装 Visual Studio 的时间与安装 SCons 的时间无关。 SCons 应该在每次运行时找到 Visual Studio。您可以尝试以下操作:不要运行 vcvarsall.bat,设置 SCONS_MSCOMMON_DEBUG=%TEMPDIR%\scons_mstrace.log ,运行 scons,然后将输出粘贴到某处并将其添加到您的问题中?
-
@bdbaddog,问题中的最后一个错误与清单有关。之前的所有步骤都已成功完成。我的问题是:您的想法是否解决了清单中显示的问题?
-
正如我在之前的评论中所说的那样。您不需要在运行 SCons 之前运行 vcvarsall.bat。如果您需要,则表明 SCons 没有找到您的 Visual Studio 安装。在这里设置 SCONS_MSCOMMON_DEBUG 将有助于找出失败的原因,并减轻运行 vcvarsall.bat 的需要。 MSVC 初始化不完整,scons 中的 MSVC 可能与您的剩余问题有关。
标签: python apache websocket scons cl