ARM平臺移植 openssl-1.1.1
openssl 新版本 config 變化較大
openssl-OpenSSL_1_1_1-stable.zip
./config no-asm shared --prefix=/home/H1Ne shared
no-asm 在交叉編譯過程中不使用匯編程式碼程式碼加速編譯過程
shared 生成動態連結庫
配置完成後修改Makefile檔案,CC=和--host=無效
修改Makeffile
#PLATFORM=linux-x86
PLATFORM=linux-armv4
#CROSS_COMPILE=
CROSS_COMPILE=/home/H1Ne/bin/arm-linux-
刪除 所以 -m32 -m64
make
make install
編譯test例項
-
#include <stdio.h>
-
#include <openssl/sha.h>
-
int main ()
-
{
-
SHA_CTX s;
-
int i, size;
-
char c[512];
-
unsigned char hash[20];
-
// 初始化 SHA Contex, 成功返回1,失敗返回0
-
SHA1_Init(&s);
-
// 迴圈呼叫此函式,可以將不同的資料加在一起計算SHA1,成功返回1,失敗返回0
-
while ((size=read (0, c, 512)) > 0)
-
SHA1_Update(&s, c, size);
-
// 輸出SHA1結果資料,成功返回1,失敗返回0
-
SHA1_Final(hash, &s);
-
for (i=0; i < 20; i++)
-
printf ("%.2x", (int)hash[i]);
-
printf ("\n");
-
}
/home/H1Ne/bin/arm-linux-gcc sha1_test.c -lssl -lcrypto -ldl -o sha1_test.out
編譯通過,在當前目錄生成sha1_test.out可執行檔案
將sha1_test.out拷貝到ARM裝置上
執行./sha1_test.out < sha1_test.out
輸出:78b32a7882a5ffea5d48b2f2b6bea633fa78e0e1
移植成功。