提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
前言
最近项目需要升级Mbedtls库版本,在这里记录下从下载、编译、安装流程。都是心酸与泪史。。。
一、Mbedtls下载
首先在自己目录下新建一个目录,在Mbedtls官网下载最新版本的库。可以去官网下载,也可以使用git直接克隆仓库到自己的目录下
官网地址:https://www.trustedfirmware.org/projects/mbed-tls/
git克隆路径
git clone https://github.com/ARMmbed/mbedtls.git
这里需要注意,如果是克隆最新的代码,需要执行这行命令同步最新的代码才能编译通过
git submodule update --init --recursive
克隆仓库后需要查看目前分支目录,找到最新的版本分支
切换分支,这里我选择的是/origin/mbedtls-3.6
git checkout -b mbedtls-3.6 origin/mbedtls-3.6
查看是否切换到目标分支
二、编译
接下来就是重中之中,因为Mbedtls库编译需要依赖Python的很多库,所以在编译之前检查自己python版本,需要Python3.6版本以上才能支持。
装好python3.6版本后需要安装python的两个库, jsonschema和jinja2
pip install jsonschema
pip install jinja2
没有这些库的情况就是这样,需要python3.6以上安装的库才能够使用。
安装完库后执行make,编译成功的界面如下:
三、安装
如果无需指定安装目录则直接
make install
需要指定目录则
make DESTDIR=/*自己需要指定的目录*/ install
四、验证
先配置环境变量
sudo ldconfig
echo "export MBEDTLS_BASE='/home/lzf/repo/mbedtls'" >> $HOME/.bashrc
source $HOME/.bashrc
最后执行hello验证
验证成功如下:
到这里就完成全部流程了。
Mbedtls需要用到的库在这个路径下面
xxx安装目录/usr/local/lib