安装SDK工具包
更新时间:2024-12-20
运行环境
依赖开源的第三方库,包括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 Centos用户安装指南
依赖公共库安装:
sudo yum install gcc-c++
sudo yum install autoconf
sudo yum install automake
sudo yum install libuuid-devel
sudo yum install openssl-devel
sudo yum install libcurl-devel
执行以下命令即可在thirdlib中生成jsoncpp库:
cd thirdlib/json
make
make install
基于autotools环境构建
- 执行
sh autogen.sh
生成configure; - 执行
configure
,添加必要的选项,比如--prefix
或者CXXFLAGS
等; - 执行
make & make install
,将在对应路径生成include和lib。
编译引用
- 如果没有安装到gcc默认路径下,则在CXXFLAGS里使用-L指定lib路径,使用-I指定include路径;
- 在LDFLAGS里指定
-lbossdk
。 - cpp需要std-11及其以上环境, 可使用CC=或CXX=来指定高版本gcc或g++编译器。
如果直接写编译命令的,可也以直接指定-L -I -l
。
Linux Ubuntu & Debian用户安装指南
依赖公共库安装:
sudo apt-get -y install build-essential
sudo apt-get install autoconf
sudo apt-get install uuid-dev
sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev
执行以下命令即可在thirdlib中生成jsoncpp库:
cd thirdlib/json
make
make install
基于autotools环境构建
- 执行
sh autogen.sh
生成configure
文件; - 执行
configure
,添加必要的选项,比如--prefix
或者CXXFLAGS
等; - 执行
make & make install
,将在对应路径生成include和lib。
编译引用
- 如果没有安装到gcc默认路径下,则在CXXFLAGS里使用-L指定lib路径,使用-I指定include路径;
- 在LDFLAGS里指定-lbossdk。
- cpp需要std-11及其以上环境, 可使用
CC=
或CXX=
来指定高版本gcc或g++编译器。
如果直接写编译命令的,可也以直接指定-L -I -l
。
Windows用户安装指南
环境准备
- 安装Visual studio 2012或更高版本。
- 安装CMake3.1或以上。
- thirdlib已经包含所需要三方库(curl、jsoncpp),如需要其它版本,请到官方网站下载。
快速体验
- 解压thirdlib目录下的
windows_dependency.zip
到thirdlib
下。 - 双击
example\\example.sln
编译使用
- 解压
thirdlib
目录下的windows_dependency.zip
到thirdlib
下 -
创建build目录
mkdir build cd build
-
生成目标
sln cmake -G "\\<type>" ..
这里要根据所安装的Visual studio 版本和编译平台,而选择不同的\<type>。生成Visual Studio 2015的sln:
cmake -G "Visual Studio 14 2015" ..
生成Visual Studio 2013编译目标是64位的sln:cmake -G "Visual Studio 12 2013 Win64"
参数详见CMake帮助文档。
- 编译: 直接使用cmake 编译
cmake --build .
或手动打开bossdk.sln
。 -
结果生成: 编译结果将生成在代码根目录的output文件夹下。结构如下:
output ├── include │ └── bcesdk │ ├── auth │ ├── bos │ │ ├── model │ │ ├── request │ │ └── response │ ├── common │ ├── http │ ├── model │ └── util └── lib ├── x64 │ ├── Debug │ └── Release └── x86 ├── Debug └── Release
-
使用SDK
编译:把
output/include
添加include
目录下
链接:主动链接bossdk.lib
,jsoncpp.lib
,LIBCURL.LIB
执行:把LIBCURL.DLL
放到目标exe同一个目录下
低于Visual studio 2012 的编译问题
- 低于Visual studio 2005将存在大量问题,强烈不建议使用。
- 必须使用windows SDK 7.1或以上版本。
- 需要解决
stdint.h
不存在问题和替换少量的CRT函数如:strtoull,strtoll等。
卸载SDK
预期卸载SDK时,删除output路径。