您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

ACE 往嵌入式Linux 上移植过程

添加时间:2011-1-28  添加: admin 

1、在安装有Linux操作系统的PC上安装交叉编译器,笔者使用的是Moxa tool chain for DA66x,(其它的嵌入式Linux系统都是一样的做法),可以从Moxa网站上下载:

http://www-moxa-com/drivers/UC/DA_66X_LX/tool_chain/linux/V1.0/Linux_tool-chain_1.0.zip

2、将ACE程序包下载到Linux PC上,并解压

3、设置环境变量:

A、交叉编译工具的路径:export PATH=”/usr/local/xscale_be/bin:$PATH”

B、ACE_ROOT:export ACE_ROOT=”/home/jun/ACE_wrappers”(根据实际路径设置)


4、将$ACE_ROOT/ace/config-linux.h复制成$ACE_ROOT/ace/config.h

cp $ACE_ROOT/ace/config-linux.h $ACE_ROOT/ace/config.h

5、将$ACE_ROOT/include/makeinclude/platform_linux.GNU复制成

$ACE_ROOT/include/makeinclude/platform_macros.GNU并修改

$ACE_ROOT/include/makeinclude/platform_macros.GNU文件:

添加:


CC = xscale_be-gcc


CXX = xscale_be-g++


删除:


insure ?= 0


ifeq ($(insure),1)


CC = insure


CXX = insure


else


CC ?= gcc


CXX ?= g++


endif

6、修改$ACE_ROOT/include/makeinclude/platform_g++_common.GNU文件,注释第90行:LDFLAGS += -Wl,-E


7、进入$ACE_ROOT,直接输入make


8、将生成的libACE.so.5.5.6复制到DA66x的CF卡上/mnt/had/lib,并编辑DA662的/etc/profile,在该文件中添加export LD_LIBRARY_PATH=”/mnt/hda/lib: $LD_LIBRARY_PATH ”


9、另外,gperf目录下的测试程序无法编译,因为这些测试程序要用的通过

$(ACE_ROOT)/apps/gperf/src/目录下的相关源代码生成的gperf程序去完成下一步动作,而这个程序是利用交叉编译器生成的,不能在PC上运行。因此在GNUmakefile里面的all:后面,我们要删除cppinset adainset cinset iinset iinset2 m3inset pinset preinset taoinset tinset这些目标对象。

10、整个编译过程要30分钟左右,看机器性能。

插曲:一开始笔者使用的是platform_macosx.GNU,对这个文件做了适当的调整然后命名为platform_macros.GNU,原因是他们很相似。结果一开始编译还挺顺利的,可是没一会(在编译ACEXML的时候)就编译不下去了,晕死了!而且生成的libACE.so库也有问题!后来在网上看到其它网友在Linux下编译ACE,受到启发,改用platform_linux.GNU,并且直接


添加:


CC = xscale_be-gcc


CXX = xscale_be-g++

而不用本身的东西!


总结,干嘛搞个platform_macosx.GNU在那,害人不浅啊!

关键字:ACE 嵌入式 Linux 移植

分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站