php源码学习笔记--搭建运行环境及编译安装

使用vagrant,搭建centos7.3系统环境

个人不太喜欢在个人电脑上添加各种环境,开发或调试环境比较喜欢使用docker或者vagrant搭建centos7系统环境。
docker比较适合无需对环境进行改变,仅对应用进行操作的情况。
而vagrant安装的centos7系统环境,也就是virtualbox虚拟机,较比docker的centos镜像,在管理操作系统本身上更加自由。
vagrant搭建参考博客使用vagrant+virtualbox搭建跨平台开发环境

vagrant box add centos7.3 package.box
vagrant init centos7.3

# edit Vagrantfile

vagrant up

php源码下载及编辑安装

#从git仓库下载
git clone https://github.com/php/php-src.git

#安装必备的依赖环境
yum install -y \
gcc-c++ autoconf \
libjpeg libjpeg-devel libpng \
libpng-devel freetype freetype-devel \
libpng libpng-devel libxml2 libxml2-devel \
zlib zlib-devel glibc glibc-devel \
glib2 glib2-devel bzip2 bzip2-devel \
ncurses curl openssl-devel \
gdbm-devel db4-devel libXpm-devel \
libX11-devel gd-devel gmp-devel \
readline-devel libxslt-devel \
expat-devel xmlrpc-c xmlrpc-c-devel \
libicu-devel libmcrypt-devel \
libmemcached-devel \
curl-devel

#进入php-src目录
sh buildconf
./configure

# 编译时根据需求添加参数

配置vscode的c++开发环境

参考博文在macOS下使用Visual Studio Code进行C/C++开发

  • 安装插件

    cpptools
    C/C++ Clang

  • 点击[Code]->[首选项]->[用户设置]进行如下配置

"C_Cpp.autocomplete": "Disabled",
"clang.cxxflags": ["-std=c++11"]
  • 项目环境配置
  1. 用vscode打开php-src目录
  2. VSCODE命令行执行 [C/Cpp: Edit Configurations] 命令,在目录的.vscode配置目录下生成一个c_cpp_properties.json文件
  3. 修改Mac节点下的includePath变量添加C++11跳转支持:
  "includePath": [
      "/usr/include",
      "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1"
  ]

4.打开命令模式,选择[Tasks: Configure Task Runner]命令,其会在目录的.vscode配置目录下生成一个tasks.json文件

  {
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "clang++",
    "isShellCommand": true,
    "args": ["main.cpp", "-std=c++11", "-g"],
    "showOutput": "always"
}

注:main.cpp是入口文件,

添加新评论