【问题标题】:Building PhantomJS 2.0 on Windows results in a strange error在 Windows 上构建 PhantomJS 2.0 会导致一个奇怪的错误
【发布时间】:2015-04-28 13:18:14
【问题描述】:

我正在尝试从 c:\fastio\phantomjs\phantomjs 目录在 Windows 上构建 PhantomJS 2.0。由于某种原因,构建过程在一段时间后失败,出现 2 个错误(请参阅下面的错误消息):

1) 它尝试访问“C:fastiophantomjsphantomjssrcqtqtbasebinmoc.exe”。显然,目录名称之间的反斜杠字符在构建过程中以某种方式被剥离 - 可能是 Windows 风格的 "\" 和 Linux 风格的 "/" 不匹配(但这只是猜测)。

2) 还有另一个错误,“无法从文件中读取名称:C:/fastio/phantomjs/phantomjs/src/qt/qtwebkit/Source/WebCore/mathml/mathtags.in”。

如果我从 PATH 中删除 sh.exe,构建仍然会到达这一点,并且只出现错误 #2,这让我认为错误 #2 是这里真正的问题。

这是完整的错误消息(据我所知,这是在构建 WebKit 时发生的):

sh: C:fastiophantomjsphantomjssrcqtqtbasebinmoc.exe: command not found
Failed to read names from file: C:/fastio/phantomjs/phantomjs/src/qt/qtwebkit/Source/WebCore/mathml/mathtags.in at C:/fastio/phantomjs/phantomjs/src/qt/qtwebkit/Source/WebCore/dom/make_names.pl line 315.
NMAKE : fatal error U1077: 'C:\Users\Eugene\AppData\Local\GitHub\PortableGit_c2ba306e536fdf878271f7fe636a147ff37326ad\bin\perl.EXE' : return code '0x7f'
Stop.

(顺便说一句,我看到了this question,但我已经解决了那里描述的问题,我的错误发生在构建过程的后期。)

我怎样才能做到这一点?

完整日志如下:

控制台输出: http://pastebin.com/btMeNPz4

QT 构建日志文件 build_qt_4-285-20-0859.log: http://pastebin.com/LUEJz7E0

WebKit 构建日志文件 build_webkit_4-285-20_0859.log: http://pastebin.com/494TivXF

PhantomJS 构建日志文件 build_phantomjs_4-285-20_0859.log:

【问题讨论】:

    标签: qt webkit phantomjs qtwebkit qwebkit


    【解决方案1】:

    看起来我自己找到了解决方案,这是我的步骤:

    1. 尽可能从 PATH 中删除,只留下对构建过程至关重要的条目
    2. 最重要的是,从 PATH 中删除所有 GitHub 的 git 目录
    3. 单独安装 GIT(不是从 GitHub 而是从 git-scm.com),只添加它的 cmd 目录(不是它的 bin 目录) 到 PATH
    4. 单独安装 ActivePerl,将其添加到 PATH

    它正在克服我在上述步骤中询问的错误(仍然不确定它是否会成功完成构建,这需要一段时间)。

    【讨论】:

    • 非常感谢。我遇到了同样的问题,按照你的建议工作
    • 我希望我能不止一次地支持这个答案。谢谢,这个:“从 PATH 中删除所有 GitHub 的 git 目录”有助于最终构建。你应该接受这个作为答案,这是值得的。
    猜你喜欢
    • 1970-01-01
    • 2010-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2011-06-03
    相关资源
    最近更新 更多