vc11(vs2012)下编译php源码
需要原料:
vs2012、php源码
注:若是x64编译php7以上,请参考https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2
1、本机的mingw没搞定,参考网上文章尝试vs2012编译,借助vs2012自带的命令行工具:

需要去bison官网下载bison.exe放在“c:/windows/”下,flex.exe也同样需要。
2、开始菜单->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 Command Prompt,打开Visual Studio 2008命令提示行,cd切换到php-src下,输入buildconf.bat(源码自带),回车。
3、输入cscript /nologo configure.js --disable-all --enable-cli 创建最小化的编译makefile
4、这时候提示输入nmake命令。输入,回车,等待编译。
5、测试是否成功
php -r "echo ‘hello,php';"
6. nmake时会出现错误,若是"nmake fatal error u1077"则可能是vs未加入系统环境变量,将“vs/vc/bin”以及“vs/common7/ide”加入系统环境变量;若是“nmake fatal error cl.exe 0x2”则可能是改动了源码,且发生了错误。
参考:
1、http://blog.linuxphp.org/archives/1592/
2、http://demon.tw/software/compile-php-on-windows.html
3、https://wiki.php.net/internals/windows/stepbystepbuild
4、https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2
vc11(vs2012)下编译php源码的更多相关文章
- Windows下编译live555源码
Windos下编译live555源码 环境 Win7 64位 + VS2012 步骤 1)源码下载并解压 在官网上下载最新live555源码,并对其进行解压. 2)VS下建立工程项目 新建Win32项 ...
- Windows 10 x64 下编译 Hadoop 源码
Windows 10 x64 下编译 Hadoop 源码 环境准备 Hadoop并没有提供官方的 Windows 10 下的安装包,所以需要自己手动来编译,官方文档中 BUILDING.txt 文件中 ...
- ubuntu下编译VLC源码
http://blog.csdn.net/beitiandijun/article/details/9225591ubuntu下编译VLC源码 分类: 视频处理 2013-07-02 17:33 57 ...
- Windows,linux下编译qt源码(比较简单)
一.linux下静态编译qt源码 1.取到qt源码并解压到文件夹 2.cd到qt目录下 3.使用configure生成makefile ./configure–prefix /opt/qtstatic ...
- 【转】在Ubuntu下编译Android源码并运行Emulator
原文网址:http://www.mcuos.com/thread-4553-1-1.html 建立编译环境 1.在VirtualBox上安装Ubuntu 2.安装JDK $ sudo apt-ge ...
- mac下编译node源码
看过一篇win7 64x下面编译node的文章,链接地址:编译nodejs及其源码研究 下面学习一下在mac下面如何编译node源码. 过程也挺简单. 1.下载源码. > mkdir nodes ...
- ubuntu18.04.2下编译openjdk9源码
最近在看<深入理解Java虚拟机 第二版>这本书,上面有关于自己编译OpenJDK源码的内容.自己根据书里的指示去操作,花了三天的时间,重装了好几次Ubuntu(还不知道快照这个功能,好傻 ...
- vc11(vs2012)下编译php
需要原料: vs2012.php源码 1.本机的mingw没搞定,参考网上文章尝试vs2012编译,借助vs2012自带的命令行工具: 需要去bison官网下载bison.exe放在“c:/windo ...
- windows下编译lua源码
所有的lua源码都放在了 src 文件夹下,当然,不同的lua版本目录结构有可能不一样,但是都会有 src 这个文件夹,只有这个才是我们编译必须的.而且lua越做越精简了,5.1的版本里面还有一些te ...
随机推荐
- 关于DLNA
Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:00000099 EndFragment:00005587 概念 DLNA的全称是DIGITAL ...
- Java如何暂停线程一段时间?
在Java编程中,如何暂停线程一段时间? 以下示例显示如何通过创建sleepThread()方法来暂停线程一段时间. package com.yiibai; public class Suspendi ...
- Java如何以短格式显示月份?
在Java中,如何显示短格式的月份名称? 使用DateFormatSymbols().DateFormatSymbols类的getShortMonths()方法,本示例显示了几个月的简写名称. pac ...
- LintCode #2 尾部的零
计算阶乘尾部的0的个数,初一看很简单. 先上代码 public static long GetFactorial(long n) { || n == ) ; ); } //Main方法中调用 ); ; ...
- Java Number类
一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double等. 例如: int i = 5000; float gpa = 13.65; byte mask ...
- spring mvc实现自定义注解
实现方式:使用@Aspect实现: 1. 新建注解接口:CheckSign package com.soeasy.web.utils; import org.springframework.core. ...
- Nginx防盗链 Nginx访问控制 Nginx解析php相关配置 Nginx代理
- 【WP8】自定义EventAggregator
MVVM模式实现了ViewModel和View的分离,但是有很多时候我们需要进行页面间通信 比如,我们在设置界面修改了某个项的值,需要同步到主页面,让主页面做相关的逻辑,由于每个页面对应一个ViewM ...
- adb错误:Failed to execute android command 'adb devices'.
好吧,我是用的phonegap3.0开发的,很简单,安装的时候一句phonegap run android –device就可以了(-device参数非必要,我是为了不跑模拟器,加上此参数限制只跑到设 ...
- selenium 如何处理table
qi_ling2005 http://jarvi.iteye.com/blog/1477837 andyguo http://blog.csdn.net/gzh0222/article/detai ...