安装SDK工具包

运行环境

依赖开源的第三方库,包括curl、openssl、uuid、jsoncpp,其中jsoncpp可在thirdlib文件夹下编译并安装。

SDK目录结构

├─example // 使用示例   
├─include // 头文件  
│  └─bcesdk   
│      ├─auth        // BCE签名相关类  
│      ├─bos         // SDK服务相关类  
│      │  ├─model    // BCE公用model类  
│      │  ├─request  // SDK请求类  
│      │  └─response // SDK响应类  
│      ├─common      // 日志相关和文件工具类,如文件输入输出流   
│      ├─http        // BCE的HTTP通信相关类   
│      ├─model       // BOS内部model,如request或response   
│      └─util        // BCE公用工具类   
├─msvc               // windows viusal studio相关   
├─src                // 源码路径   
│  ├─auth   
│  ├─bench   
│  ├─bos   
│  │  ├─model   
│  │  ├─request  
│  │  └─response  
│  ├─http  
│  ├─model  
│  └─util  
├─thirdlib // 第三方库路径  
│  └─json  // linux下json依赖库路径

安装SDK

在官网下载BOS C++ SDK工具包

Linux用户安装指南

执行以下命令即可在thirdlib中生成jsoncpp库,其他库请自行安装,建议使用yum install

cd thirdlib/json
make
make install

基于autotools环境构建

  1. 执行sh autogen.sh生成configure;
  2. 执行configure,添加必要的选项,比如--prefix或者CXXFLAGS等;
  3. 执行make & make install,将在对应路径生成include和lib。

编译引用

  1. 如果没有安装到gcc默认路径下,则在CXXFLAGS里使用-L指定lib路径,使用-I指定include路径;
  2. 在LDFLAGS里指定-lbossdk。

如果直接写编译命令的,可也以直接指定-L -I -l

Windows用户安装指南

环境准备

  1. 安装Visual studio 2012或更高版本。
  2. 安装CMake3.1或以上。
  3. thirdlib已经包含所需要三方库(curl、jsoncpp),如需要其它版本,请到官方网站下载。

快速体验

  1. 解压thirdlib目录下的windows_dependency.zip到thirdlib下。
  2. 双击example\example.sln

编译使用

  1. 解压thirdlib目录下的windows_dependency.zip到thirdlib下
  2. 创建build目录

    mkdir build
    cd build
    
  3. 生成目标sln cmake -G "\" .. 这里要根据所安装的Visual studio 版本和编译平台,而选择不同的\

    生成Visual Studio 2015的sln: cmake -G "Visual Studio 14 2015" ..
    生成Visual Studio 2013编译目标是64位的sln: cmake -G "Visual Studio 12 2013 Win64"

    参数详见CMake帮助文档

  4. 编译: 直接使用cmake 编译 cmake --build . 或手动打开bossdk.sln。

  5. 结果生成: 编译结果将生成在代码根目录的output文件夹下。结构如下:

    output  
    ├── include  
    │   └── bcesdk   
    │       ├── auth  
    │       ├── bos  
    │       │   ├── model  
    │       │   ├── request  
    │       │   └── response  
    │       ├── common  
    │       ├── http  
    │       ├── model  
    │       └── util  
    └── lib  
        ├── x64  
        │   ├── Debug  
        │   └── Release  
        └── x86  
            ├── Debug  
            └── Release
    
  6. 使用SDK

    编译:把output/include添加include 目录下
    链接:主动链接bossdk.lib,jsoncpp.lib,LIBCURL.LIB
    执行:把LIBCURL.DLL放到目标exe同一个目录下

低于Visual studio 2012 的编译问题

  1. 低于Visual studio 2005将存在大量问题,强烈不建议使用。
  2. 必须使用windows SDK 7.1或以上版本。
  3. 需要解决stdint.h不存在问题和替换少量的CRT函数如:strtoull,strtoll等。

卸载SDK

预期卸载SDK时,删除output路径。