wolfSSL5.6.3移植至ZYNQ(XC7Z010)记录

        上篇文章主要描述了如何从源工程中将configure.ac转变为configure,并成功使其在Ubuntu上运行,此篇主要描述将其移植到嵌入式arm开发板上(在官方手册中有列举支持的硬件平台架构)。

交叉编译

1. 解压源工程代码;

2.进入目录wolfssl-master,将上文提到的build-aux文件夹全部复制到当前路径;

3.依次执行如下命令,生成configure;

/* 解释见上篇或自行搜索 */
aclocal -I /usr/share/aclocal-1.14 -I /usr/share/libtool/m4 --install
autoconf
autoheader
automake --add-missing

4.配置,这里我仅列举我做测试时用的选项(目前百度搜索资料很少,后续的选项及例子及API等还请参考官方手册);

./configure --prefix=$PWD/../install/arm-gcc/ --host=arm-linux CC=/root/DCJ_hf/buildroot/output/host/usr/bin/arm-linux-gnueabihf-gcc AR=/root/DCJ_hf/buildroot/output/host/usr/bin/arm-linux-gnueabihf-ar STRIP=/root/DCJ_hf/buildroot/output/host/usr/bin/arm-linux-gnueabihf-strip RANLIB=/root/DCJ_hf/buildroot/output/host/usr/bin/arm-linux-gnueabihf-ranlib ARCHFLAGS="-mcpu=cortex-a9 -mthumb" --enable-dtls --enable-openssle --enable-opensslextra

5.make

6.make install

此时指定的安装目录下有生成bin、include、lib、share四个文件夹,可以将bin内的wolfssl-config拷贝到开发板系统的/usr/bin路径下、lib内的几个动态库文件拷贝到开发板系统的/usr/lib路径下;

验证

        同安装到Ubuntu,交叉编译过程中,源代码工程下的examples路径下相关的例子也已编译完成,但此处有个问题,

        将箭头所指的可执行文件拷贝到开发板,运行后提示找不到相关路径和文件:

这应该是该文件在执行时动态链接相关内容并执行(看大小猜测),但是我目前还不清楚为什么会牵扯到编译器,有了解的同学可以下方评论区告诉我,感谢!

        

在.libs文件夹下可以看到有个比较大的可执行文件,将其拷贝到开发板路径并cd到该路径下(如果在其他路径执行如/**/**/server,会报错,提示wolf root失败,必须要进入到可执行文件的同级目录下才可,手册上有解释,说是证书路径的问题),同时,需要将源代码工程下的certs文件夹拷贝到开发板可执行文件的同级目录,

<--开发板路径内容

当前路径开启两个窗口,一个窗口先执行./server,另外一个窗口后执行./client 127.0.0.1,结果如下:

 

执行testsuite.test(因为在配置编译选项时基本上按照默认的来,有些功能默认是关闭的,所以会有下面的一些错误)

至此,移植成功。

补充

        如上文所述在指定的安装路径下会生成四个文件夹:bin、include、lib、share,其中在lib文件夹下还有一个叫pkgconfig的文件夹,里面有个文件叫wolfssl.pc,

prefix=/mnt/hgfs/CODE_TEST/plant/A11/wolfssl/wolfssl_com/wolfssl-arm/../install/arm-gcc
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: wolfssl
Description: wolfssl C library.
Version: 5.6.3
Libs: -L${libdir} -lwolfssl
Cflags: -I${includedir}

可以看到里面描述了wolfssl的安装路径、头文件路径、动态库路径、版本号等信息,最后两行可以在编译自己的工程代码时作为编译选项写上(安装路径文件夹可以复制到你认为方便的地方)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值