openwrt编译openswan——以及交叉编译环境配置

直接编译openwrt SDK没问题。

然后添加openswan模块,编译出现如下错误:

/root/openwrt/kzl/openwrt/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7620a/openswan-2.6.41/include/secrets.h:20:41: fatal error: gmp.h: No such file or directory


需要交叉编译gmp。

网上下载gmp-4.3.1.tar.bz2

运行如下命令,设置编译环境:

export CROSS_COMPILE=mipsel-linux-
export ARCH=mips
export HOST=mipsel-linux
export PREFIX=/home/cylan/openwrt/kzl
export AS=${CROSS_COMPILE}as
export CC=${CROSS_COMPILE}gcc
export LD=${CROSS_COMPILE}ld
export CPP="${CC} -E"
export AR=${CROSS_COMPILE}ar
export NM=${CROSS_COMPILE}nm
export STRIP=${CROSS_COMPILE}strip
export OBJCOPY=${CROSS_COMPILE}objcopy
export OBJDUMP=${CROSS_COMPILE}objdump
export PATH=/opt/buildroot-gcc342/bin/:$PATH

/opt/buildroot-gcc342/bin为交叉编译工具链目录,PATH要包含这个目录。

然后交叉编译:

./configure --host=mips --prefix=/home/cylan/openwrt/kzl

(经测试,--host=mips,--host=mips或者--host=mipsel-linux都可以,为什么?)

make & make install

make install会把头文件和库函数都安装到/home/cylan/openwrt/kzl目录下。

然后按如下步骤编译包括openswan的openwrt:

首先,重新打开一个shell,这样就把环境变量还原了,然后设置如下环境变量:

export CPATH=/home/cylan/openwrt/kzl/include
export LIBRARY_PATH=/home/cylan/openwrt/kzl/lib

把上面编译的gmp头文件目录和库目录设置到环境变量中。

然后,开始编译:make。


http://stackoverflow.com/questions/25657850/cross-compile-gmp-and-openswan-for-arm-on-ubuntu-12-04-32-bit



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值