libiec61850开源库源码编译arm-linux版本库

本文介绍了在Ubuntu14.0464位Linux系统中,如何使用gcc-linaro6.2.1交叉编译工具链编译libiec618501.0.0版本库,包括修改make/target_system.mk文件设置ARM_TOOLCHAIN_PREFIX和CFLAGS。

软件环境:

系统:ubuntu 14.04 64位Linux系统

交叉编译工具:gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf,安装路径为/usr/local/oecore-x86_64

使用交叉工具链编译arm-linux版本库:

1、下载

下载libiec61850库源码并解压,当前使用的开源库版本为1.0.0版本,存放路径为:/home/u/libiec61850-1.0.0

2、进入源码目录:

cd /home/u/libiec61850-1.0.0/

3、修改make/target_system.mk文件

(1)修改ARM_TOOLCHAIN_PREFIX为指定的交叉编译工具链前缀

这里修改为:arm-angstrom-linux-gnueabi-,即ARM_TOOLCHAIN_PREFIX=arm-angstrom-linux-gnueabi-

注:确定当前交叉编译工具链方法如下:

a、配置环境:

source /usr/local/oecore-x86_64/environment-setup-armv7at2hf-vfp-neon-angstrom-linux-gnueabi

b、查看当前交叉编译工具链:

echo $CC

输出信息如下:

arm-angstrom-linux-gnueabi-gcc -march=armv7-a -mthumb -mthumb-interwork -mfloat-abi=hard -mfpu=neon --sysroot=/usr/local/oecore-x86_64/sysroots/armv7at2hf-vfp-neon-angstrom-linux-gnueabi

(2)修改make/target_system.mk文件中CFLAGS内容:

修改前:

ifeq ($(TARGET), LINUX-ARM)

TOOLCHAIN_PREFIX=$(ARM_TOOLCHAIN_PREFIX)

CFLAGS += -mno-unaligned-access

修改后:

ifeq ($(TARGET), LINUX-ARM)

TOOLCHAIN_PREFIX=$(ARM_TOOLCHAIN_PREFIX)

CFLAGS += -mno-unaligned-access -march=armv7-a -mthumb -mthumb-interwork -mfloat-abi=hard -mfpu=neon --sysroot=/usr/local/oecore-x86_64/sysroots/armv7at2hf-vfp-neon-angstrom-linux-gnueabi

3、编译arm-linux版本库:

make TARGET=LINUX-ARM

编译成功后,编译生成的文件存放在build-arm目录下

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值