【问题标题】:not able to compile it further to php.exe in windows 10 + vs2015 + x64无法在 Windows 10 + vs2015 + x64 中将其进一步编译为 php.exe
【发布时间】:2016-03-22 11:03:46
【问题描述】:

我正在为 php 7.0.4 在 windows 中创建自定义构建。遵循https://wiki.php.net/internals/windows/stepbystepbuild 中的过程直到nmake snap 之前都很好。当我在构建配置后执行 nmake 时,它​​给了我一些错误并以错误 1077 退出。因此,根据 VS 文档https://msdn.microsoft.com/en-us/library/dt309377.aspx,我使用 /I 忽略错误并进一步构建。

问题是 -> I am getting a x86 build instead of x64 build。其次,rather than a clear build I am getting a manifest and development source. 我无法将其进一步编译为 .exe。我用来构建的命令很简单,是 configure --disable-all --enable-cli --enable-cgi --with-pgo --enable-snapshot-build 。这是一个简单的 php.exe 构建,启用了 pgo 的 php-cgi.exe。

我做错了什么?欢迎任何帮助。

更新

我发现--with-pgo 或向配置行添加任何其他扩展是错误1077 的罪魁祸首。这可能是由于deps 文件夹中缺少依赖项吗?但我仍然无法解释为什么 X86 dist 进入 X64 文件夹。我有时会收到一条错误消息,说内置构建配置与 X64 文件夹规范不匹配。不知道发生了什么无法通过启用额外的扩展来复制除 1077 之外的问题。

【问题讨论】:

    标签: php windows build compilation php-7


    【解决方案1】:

    您可能想看看这个https://github.com/johmue/win-php-sdk-builder github 项目。

    【讨论】:

    • 谢谢您,先生,您真好。刚刚回答了这个问题。这与开发者工具的环境有关
    【解决方案2】:

    通过从配置脚本中删除 --with-pgo 解决了致命错误 1077 的问题。它的构建过程(在 PHP7 中进行优化)与文档中用于正常编译的步骤不同

    生成 X86 而不是 X64 的问题是由于 vc developer 命令提示符中 cl.exe 的环境架构造成的。它设置为 x86。我通过提供命令 vcvarsall X64 和 configure 命令对其进行了更改,nmake 命令为 X64 创建了构建。

    特别感谢 Windows PHP 团队,特别是 Pierre 识别它。

    【讨论】:

      猜你喜欢
      • 2022-10-04
      • 1970-01-01
      • 2011-07-02
      • 2020-05-25
      • 2020-01-06
      • 2019-03-09
      • 1970-01-01
      • 2018-10-19
      • 1970-01-01
      相关资源
      最近更新 更多