Linux mbedtls
安装Cmake
使用Cmake安装mbedtls
教程上安装的是mbedtls-2.12.0,我安装的是mbedtls-3.0;(切换分支的时候找不到-2.12.0)
1、获取mbedtls源代码
git clone 的时候出现问题
fatal: unable to access 'https://github.com/ARMmbed/mbedtls.git/': Failed to connect to github.com port 443: Connection refused
解决办法:用 git 替代 https
2、切换分支
实际按教程上这样操作会出问题;
以下为我的解决办法
lzf@ubuntu:~/repo$ cd mbedtls/
lzf@ubuntu:~/repo/mbedtls$ git branch -a //查看有哪些分支
lzf@ubuntu:~/repo/mbedtls$ git branch -v //查看当前分支
* development da3da9437 Merge pull request #4210 from gilles-peskine-arm/crypto_values-param-names
选择其他分支
lzf@ubuntu:~/repo/mbedtls$ git checkout -b mbedtls-3.0 origin/dev/mbedtls-3.0
Branch 'mbedtls-3.0' set up to track remote branch 'dev/mbedtls-3.0' from 'origin'.
Switched to a new branch 'mbedtls-3.0'
3、编译安装
原以为这一步不会出问题,结果还是出问题了。生成makefile文件的时候报错;
查阅mbedtks文件夹下的README.md得知,新的版本要先
git clone --recursive https://github.com/ARMmbed/mbedtls.git
此处出现git clone同样问题,解决方法同上;
然后继续
lzf@ubuntu:~/repo/mbedtls$ cmake -DUSE_SHARED_MBEDTLS_LIBRARY=On .
-- Configuring done
-- Generating done
-- Build files have been written to: /home/lzf/repo/mbedtls
4、设置环境变量
lzf@ubuntu:~$ echo "export MBEDTLS_BASE='/home/lzf/repo/mbedtls'" >> $HOME/.bashrc
5、必要的验证工作
lzf@ubuntu:~$ hello
MD5('Hello, world!') = 6cd3556deb0da54bca060b4c39479839