交叉编译移植阿里云OSS C SDK

目录

1 说明

2 特别说明

3 交叉编译移植

3.1 说明

3.2 全局变量设置

3.3 移植openssl-1.0.2t

3.4 移植zlib-1.2.11

3.5 移植curl-7.67.0

3.6 移植apr-1.7.0

3.7 移植expat-2.1.0

3.8 移植apr-util-1.6.1

3.9 移植mxml-2.8

3.10 移植libuuid-1.0.3

3.11 移植aliyun-oss-c-sdk

3.12 统一打包成一个库


1 说明

阿里云OSS类似于网盘的功能,需要和阿里云签订商业协议才能存储大量的数据,所以如果和它们没有业务往来可以忽略本文内容。本文内容主要来自移植OSS C语言SDK(它还有其他语言的SDK)的经验。

2 特别说明

作者在移植成功之后,在(Ubuntu 1604上)运行过程中发现调用断点续传上传断点续传下载分片上传追加上传的业务函数会出现内存泄漏最终出现OOM。当时(2020年12月)对方技术支持说相对于C他们主要是推广C++版本的,推荐我们用C++的(当然我们也没有用C++版本,所以不知道C++版本的情况),现在有没有修复这些问题作者目前还没有验证。下列几张图是说明断点续传上传时的内存情况(虚拟内存占用越来越大)。

3 交叉编译移植

3.1 说明

本文提到的依赖软件包可以在百度网盘中找到,也可以自行从各自的官网下载。

链接:https://pan.baidu.com/s/1KK8HtGcJvR38ZmEazLlU2w

提取码:nsmy

可以从https://help.aliyun.com/document_detail/32131.html?spm=5176.87240.400427.52.8f4a4614owPWLu

查看OSS的全貌。

3.2 全局变量设置

在移植其他依赖包之前请先设置全局变量,

export CC=arm-none-linux-gnueabi-gcc

export CXX=arm-none-linux-gnueabi-g++

3.3 移植openssl-1.0.2t

tar xzf openssl-1.0.2t.tar.gz

cd openssl-1.0.2t

setarch i386 ./config no-asm --static --prefix=/home/lijun_temp/install_tmp

将crypto/buffer/buffer.c改名为crypto_buffer.c,更改crypto/buffer/Makefile,将其中的buffer.c、buffer

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ta是一个搬运工

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值