本机安装多个版本的protoc

以下以3.0.2和2.5.0为例,

环境

要部署的服务器环境:

  • git
  • autoconf
  • automake
  • libtool
  • curl (used to download gmock)
  • make
  • g++
  • unzip

可以使用yum直接安装

安装过程

下载源码到服务器

git clone [email protected]:google/protobuf.git

如果服务器不能连接外网就下载到本机,然后打包发送到服务器

运行autogen

进入安装路径,运行

./autogen.sh    

安装protoc3.0.2

  1. 进入源码所在路径(比如为$PROTO_HOME)

    cd $PROTO_HOME
    
  2. 更换到指定版本

    git checkout v3.0.2
    
  3. 配置编译后的输出路径(比如为$PROTOC_3_0_2)

    ./configure --prefix=$PROTOC_3_0_2
    
  4. 编译

    make && make install
    
  5. 制作软连接

    ln -s $PROTOC_3_0_2/bin/protoc /usr/local/bin/protoc3.0.2
    

安装protoc2.5

  1. 进入源码所在路径(比如为$PROTO_HOME)

    cd $PROTO_HOME
    
  2. 更换到指定版本

    git checkout v2.5.0
    
  3. 配置编译后的输出路径(比如为$PROTOC_2_5)

    ./configure --prefix=$PROTOC_2_5
    
  4. 编译

    make && make install
    
  5. 制作软连接

    ln -s $PROTOC_2_5/bin/protoc /usr/local/bin/protoc2.5
    

测试

用两个版本的protoc分别编译同一份proto文件

  1. 拿到proto文件(比如为test.proto)
  2. 创建文件夹

    mkdir ./pb2 ./pb3
    
  3. 编译protoc2.5

    protoc2.5 --java_out=./pb2 test.proto
    
  4. 编译protoc3.0

    protoc3.0.2 --java_out=./pb3 test.proto
    

你可能感兴趣的:(本机安装多个版本的protoc)