安装
支持平台
TQUIC基于Rust语言开发,目前支持Linux、MacOS、FreeBSD、Windows、iOS、Android、Harmony平台。
环境准备
编译
- Linux
- MacOS
- FreeBSD
- Windows
- Android
- iOS
- Harmony
执行如下命令进行编译:
git clone https://github.com/tencent/tquic --recursive
cd tquic
cargo build --release --all
参数--release
指定cargo编译优化版本,编译结果位于./target/release/
目录,而不是默认的./target/debug/
目录。
参数--all
指定cargo编译TQUIC协议库及示例工具
如果要启用C语言接口,请在cargo build
命令后添加参数-F ffi
:
cargo build --release -F ffi
执行如下命令进行编译:
git clone https://github.com/tencent/tquic --recursive
cd tquic
cargo build --release --all
参数--release
指定cargo编译优化版本,编译结果位于./target/release/
目录,而不是默认的./target/debug/
目录。
参数--all
指定cargo编译TQUIC协议库及示例工具
如果要启用C语言接口,请在cargo build
命令后添加参数-F ffi
:
cargo build --release -F ffi
要编译FreeBSD平台的TQUIC库,你需要额外安装如下依赖:
sudo pkg install -y gmake
执行如下命令进行编译:
git clone https://github.com/tencent/tquic --recursive
cd tquic
cargo build --release --all
参数--release
指定cargo编译优化版本,编译结果位于./target/release/
目录,而不是默认的./target/debug/
目录。
参数--all
指定cargo编译TQUIC协议库及示例工具
如果要启用C语言接口,请在cargo build
命令后添加参数-F ffi
:
cargo build --release -F ffi
要编译Windows平台的TQUIC库,你需要额外安装如下依赖:
执行如下命令进行编译:
git clone https://github.com/tencent/tquic --recursive
cd tquic
cargo build --release --all
参数--release
指定cargo编译优化版本,编译结果位于.\target\release\
目录,而不是默认的.\target\debug\
目录。
参数--all
指定cargo编译TQUIC协议库及示例工具
如果要启用C语言接口,请在cargo build
命令后添加参数-F ffi
:
cargo build --release -F ffi
要编译Android平台的TQUIC库,你需要额外安装如下依赖:
- 安装Android NDK并设置环境变量
ANDROID_NDK_HOME
# 将环境变量ANDROID_NDK_HOME设置为NDK安装路径
export ANDROID_NDK_HOME=/path/to/android-ndk
- 安装Rust Android工具链和cargo-ndk
# 安装Rust Android工具链
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
# 安装cargo-ndk以便简单编译Android库
cargo install cargo-ndk
执行如下命令进行编译:
git clone https://github.com/tencent/tquic --recursive
cd tquic
# 必须指定选项-t <architecture> 和-p <NDK version>
cargo ndk -t arm64-v8a -p 21 -- build --features ffi --release
参数--release
指定cargo编译优化版本,编译结果位于./target/release/
目录,而不是默认的./target/debug/
目录。
参数--features ffi
指定cargo编译C接口库
要编译iOS平台的TQUIC库,你需要额外安装如下依赖:
- 安装Xcode和Xcode命令行工具
# 安装Xcode命令行工具
xcode-select --install
- 安装Rust iOS工具链和cargo-lipo
# 安装Rust iOS工具链
rustup target add aarch64-apple-ios x86_64-apple-ios
# 安装cargo-lipo以便自动创建iOS通用库
cargo install cargo-lipo
执行如下命令进行编译:
git clone https://github.com/tencent/tquic --recursive
cd tquic
cargo lipo --features ffi --release
参数--release
指定cargo编译优化版本,编译结果位于./target/release/
目录,而不是默认的./target/debug/
目录。
参数--features ffi
指定cargo编译C接口库
要编译Harmony平台的TQUIC库,你需要额外安装如下依赖:
- 安装OHOS NDK 并设置环境变量
OHOS_NDK_HOME
wget https://repo.huaweicloud.com/openharmony/os/4.0-Release/ohos-sdk-windows_linux-public.tar.gz
tar -xvzf ohos-sdk-windows_linux-public.tar.gz
cd ohos-sdk/linux/
unzip native-linux-x64-4.0.10.13-Release.zip
# 将环境变量ANDROID_NDK_HOME设置为Linux平台NDK安装路径
# 例 export OHOS_NDK_HOME=/path/to/ohos-sdk/linux/
export OHOS_NDK_HOME=`pwd`
- 安装Rust Harmony工具链和ohrs
# 安装Rust Harmony工具链
rustup target add aarch64-unknown-linux-ohos armv7-unknown-linux-ohos x86_64-unknown-linux-ohos
# ohrs工具用于帮助构建面向OpenHarmony的Rust工程
cargo install ohrs
执行如下命令进行编译:
git clone https://github.com/tencent/tquic --recursive
cd tquic
ohrs build -- --features ffi --release
参数--release
指定cargo编译优化版本,编译结果位于./target/release/
目录,而不是默认的./target/debug/
目录。
参数--features ffi
指定cargo编译C接口库
运行测试用例
执行如下命令来运行单元测试:
cargo test
进一步了解
遇到问题?
- 请参考常见安装问题 。
- 您可以在GitHub issues提问寻求帮助。