使用源码交叉构建libgcrypt库

说明:由于libgcrypt库依赖于libgpg-error,所以需要先构建libgpg-error库。

1. 源码下载

到 ftp://ftp.gnupg.org/gcrypt/ 下载libgcryp.tar.gz和libgpg-error.tar.gz源码包(我下载的版本为libgcrypt-1.7.8.tar.gz和libgpg-error-1.27.tar.gz)。

2. 构建libgpg-error

  2.1 解压

解压libgpg-error.tar.gz到/home/warmbobo/mylibs/libgpg-error-1.27,并进入该目录:
# cd /home/warmbobo/mylibs/libgpg-error-1.27

  2.2 配置

(1)添加交叉工具环境
#export PATH=$PATH:/home/warmbobo/toolschain/gcc-linaro-x86_64_aarch64-linux-gnu/bin/
(2)配置编译选项
#./configure --host=aarch64-linux-gnu --prefix=/home/warmbobo/mylibs/install/libgpg-error-1.27

  2.3 编译安装

#make
#make install
上述步骤完成后会将生成的文件安装到/home/warmbobo/mylibs/install/libgpg-error-1.27目录下。这些文件安装完成后不要轻易移动里面文件或者目录位置,后面libgcrypt会依赖这些路径。

3. 构建libgcrypt

  3.1 解压

解压libgcrypt-1.7.8.tar.gz到/home/warmbobo/mylibs/libgcrypt-1.7.8,并进入该目录:

#cd /home/warmbobo/mylibs/libgcrypt-1.7.8

  3.2 配置

(1)添加交叉工具环境

#export PATH=$PATH:/home/warmbobo/toolschain/gcc-linaro-x86_64_aarch64-linux-gnu/bin/

(2)配置编译选

#./configure  GPG_ERROR_CONFIG=/home/warmbobo/mylibs/install/libgpg-error-1.27/bin/gpg-error-config --host=aarch64-linux-gnu --prefix/home/warmbobo/mylibs/install/libgcrypt-1.7.8 --disable-asm
解释一下一些参数的含义:

GPG_ERROR_CONFIG:该选项指定gpg-error-config工具路径,默认为/usr/bin/gpg-error-config。configure可通过gpg-error-config工具可以找到依赖的libgpg-error库路径(./gpg-error-config --libs 会指出我们之前安装的libgpg-error库的绝对路径)。
  --disable-asm:该选项表示不使用汇编模块。在有些机器上需要使能,有的机器不需要。如果链接时候出现找不到“_gcry_mpih_lshift”这类符号的提示,可以尝试使用这个标志。同时,还可以参考libgcrypt-1.7.8/README中的“Build Problems”这一段。

  3.3 编译安装

#make
#make install
上述步骤完成后会将生成的文件安装到/home/warmbobo/mylibs/install/libgcrypt-1.7.8目录下,其中库文件在libgcrypt-1.7.8/lib目录下。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值