You need to enable JavaScript to run this app.
导航

安装 C++ SDK

最近更新时间2024.02.04 18:30:55

首次发布时间2022.04.08 10:56:29

本文介绍 TOS C++ SDK 的下载地址及安装方式。

环境准备

安装 TOS C++ SDK 前,请确保您已安装以下依赖:

  • C++ 11 及以上版本
  • CMake 3.1 及以上版本
  • GCC 4.8 及以上版本
  • Clang 3.3 及以上版本
  • Windows 环境下,要求 Visual Studio 2019 及以上版本

下载地址

安装方式

通过源码编译

  1. 下载源码。您可以通过以下方式下载源码:

    • 直接下载:TOS C++ SDK 的源码地址,请参见 TOS C++ SDK。最新版本请以 Git 更新为准。
    • 通过 Git 下载:执行以下命令,将源码克隆到本地。
      git clone https://github.com/volcengine/ve-tos-cpp-sdk
      
  2. 执行以下命令,使用 CMake 3.1 及以上版本构建。

    cd ve-tos-cpp-sdk
    mkdir build
    cd build
    

注意

SDK 依赖 libcurl 和 openssl 两个库。在构建 SDK 之前,请确保您已安装这两个库。

Linux

  1. 执行以下命令安装 libcurl 和 openssl。

    # 对于 Ubuntu/Debian 系统
    sudo apt-get install libcurl4-openssl-dev libssl-dev
    
    # 对于 Centos7
    yum install libcurl-devel openssl-devel
    
    # 对于 Redhat/Fedora 系统
    sudo dnf install libcurl-devel openssl-devel
    
  2. 执行以下命令进行编译及安装。

    cmake ../ -DCMAKE_INSTALL_PREFIX="自定义安装路径"
    make
    make install
    

macOS

在 macOS 系统中,您可以使用 brew 方式来安装依赖库。
在 macOS 系统上需指定 openssl 库的路径。假设 OpenSSL 安装在 /usr/local/Cellar/openssl@3/3.0.0 目录中,则可执行以下命令编译。

cmake .. -DOPENSSL_ROOT_DIR=/usr/local/Cellar/openssl@3/3.0.0 
         -DOPENSSL_LIBRARIES=/usr/local/Cellar/openssl@3/3.0.0/lib 
         -DOPENSSL_INCLUDE_DIRS=/usr/local/Cellar/openssl@3/3.0.0/include
         -DCMAKE_INSTALL_PREFIX="自定义安装路径"
make
make install

Windows

请以管理员身份运行 VS 开发人员命令提示符,在 build 目录文件下运行以下命令进行编译安装。

cmake ../
msbuild ALL_BUILD.vcxproj
msbuild INSTALL.vcxproj

CMake 编译选项

BUILD_SHARED_LIB

默认关闭,CMake 默认只编译静态库。打开后,CMake 会同时编译静态库和动态库,同时 SDK 会链接到动态库。

cmake .. -DBUILD_SHARED_LIB=ON

BUILD_DEMO

默认关闭。打开后,CMake 会对 example 文件夹中的示例进行编译,可直接运行。具体见 example 文件夹中示例。

cmake .. -DBUILD_DEMO=ON

BUILD_UNITTEST

默认关闭。打开后 CMake 会编译test文件夹中的单测用例。注意如果需要编译单测部分,要求 cmake 大于3.14。

cmake .. -DBUILD_UNITTEST=ON

升级到 V2

要升级到 TOS C++ SDK V2,需要修改客户端初始化方式。相比于 V1 版本, V2 版本具有以下特点:

  • 更丰富接口能力,V2 支持更多的接口能力并持续进行迭代。
  • 更多的增值功能,V2 部分接口支持事件回调、进度通知、限流等增值特性。

说明

后续新增加特性不会在 V1 版本迭代,建议您使用 V2 版本。

修改前

客户端初始化 TosClient 客户端如下。

#include "TosClient.h"
using namespace VolcengineTos;
int main(void){
    std::string endpoint = "Your Endpoint";
    std::string region = "Your Region";
    // 从环境变量中获取访问密钥
    std::string accessKey = std::getenv("TOS_ACCESS_KEY");
    std::string secretKey = std::getenv("TOS_SECRET_KEY");
    // 初始化 SDK
    InitializeClient();
    // 初始化交互的 client
    TosClient client(endpoint, region, accessKey, secretKey);
    /*
    使用 SDK
    */
    // 关闭 SDK
    CloseClient();
    return 0;
}

修改后

客户端初始化 TosClientV2 客户端如下。

#include "TosClientV2.h"
using namespace VolcengineTos;
int main(void){
    // 初始化 TOS 账号信息
    // Your Region 填写 Bucket 所在 Region
    std::string region = "Your Region";
    std::string accessKey = std::getenv("TOS_ACCESS_KEY");
    std::string secretKey = std::getenv("TOS_SECRET_KEY");
    
    // 初始化 SDK
    InitializeClient();
    // 初始化交互的 client
    TosClientV2 client(region, accessKey, secretKey);
    
    /*
    使用 SDK
    */
    // 关闭 SDK
    CloseClient()
    return 0;
}

注意

升级到 V2 的客户端初始化参数有所变化,endpoint 参数由 Client V1 中的首个必选参数,修改为了 Client V2 中的可选参数。如您仍需指定 endpoint,具体步骤,请参见设置可选参数