1.交叉编译openssl
去官网下载openssl-1.0.2q.tar.gz,解压缩到目录/home/lwang/work/chengw/github/下,然后进入openssl目录按照如下步骤操作
1) 配置编译选项
1 | ./config no-asm shared --cross-compile-prefix=aarch64-linux-gnu- --prefix=/home/lwang/work/chengw/github/openssl-1.1.1a/release |
其中参数的含义为:
no-asm:在交叉编译过程中不使用汇编代码代码加速编译过程;
shared:生成动态链接库;
–prefix:指定生成lib、include、bin三个核心目录的路径,不修改此项则默认为OPENSSLDIR目录。
2) 修改生成的Makefile,去掉-m64选项,否则会编译报错
3) 编译
1 | make -j4 |
4) 安装
1 | make install |
最终编译生成的头文件和lib文件都位于当前release目录下
2.交叉编译net-snmp
在官网下载net-snmp-5.7.3.tar.gz,解压缩到/home/lwang/work/chengw/github/目录,然后进入net-snmp目录,并按照如下步骤操作
1) 配置编译选项
1 | ./configure --host=arm-linux --target=arm-linux --build=i686-linux --with-cc=aarch64-linux-gnu-gcc --with-ar=aarch64-linux-gnu-ar --prefix=/home/lwang/work/chengw/github/net-snmp-5.7.3/release --with-endianness=little --disable-manuals --disable-embedded-perl --disable-perl-cc-checks --without-perl-modules --disable-scripts --disable-applications --with-openssl=/home/lwang/work/chengw/github/openssl-1.0.2q/release |
2) 编译
1 | make -j4 |
3) 安装
1 | make install |
最终编译生成的头文件和lib文件都位于当前release目录下
注意:实际测试发现,net-snmp 5.7.3只能搭配openssl-1.0.2q版本使用,更新的版本会编译报错.