1. 源码安装CMake
下载
wget h t t p s : / / github.com/Kitware/CMake/releases/download/v3.27.7/cmake-3.27.7.tar.gz
解压
tar zxf cmake-3.27.7.tar.gz
cd cmake-3.27.7
./configure && make -j && make install
创建软链
ln -s /usr/bin/cmake /usr/local/cmake-3.27.7-linux-x86_64/bin/cmake
2. 安装go
下载
wget h t t p s : / / go.dev/dl/go1.21.2.linux-amd64.tar.gz
修改.bashrc
vim ~/.bashrc
在后面加上
export PATH=$PATH:/path/to/go/bin
/path/to/go/bin替换为具体的go的解压目录
3. 下载安装编译工具
yum install centos-release-scl
yum install devtoolset-10
切换到gcc-10
source /opt/rh/devtoolset-10/enable
4. 下载编译boringssl
git clone h t t p s : / / github.com/google/boringssl.git -b chromium-5359 ./boringssl
mkdir -p build && cd build
cmake -DBUILD_SHARED_LIBS=0 -DCMAKE_C_FLAGS="-fPIC" -DCMAKE_CXX_FLAGS="-fPIC" ..
make ssl crypto
导出环境变量
export SSL_TYPE_STR="boringssl"
export SSL_PATH_STR=${PWD}
export SSL_INC_PATH_STR=${PWD}/include
export SSL_LIB_PATH_STR="${PWD}/build/ssl/libssl.a;${PWD}/build/crypto/libcrypto.a"
5.下载编译xquic
git clone h t t p s : / / github.com/alibaba/xquic.git
cd xquic
git checkout cabe860
git submodule update --init --recursive
mkdir -p build; cd build
cmake -DGCOV=on -DCMAKE_BUILD_TYPE=Debug -DXQC_ENABLE_TESTING=1 -DXQC_SUPPORT_SENDMMSG_BUILD=1 -DXQC_ENABLE_EVENT_LOG=1 -DXQC_ENABLE_BBR2=1 -DXQC_ENABLE_RENO=1 -DSSL_TYPE=${SSL_TYPE_STR} -DSSL_PATH=${SSL_PATH_STR} -DSSL_INC_PATH=${SSL_INC_PATH_STR} -DSSL_LIB_PATH=${SSL_LIB_PATH_STR} ..
make -j
6.下载编译安装tengine
安装依赖
yum install pcre-devel libunwind-devel
cd tengine-3.1.0
./build.sh /home/store/deploy-tengine/output