arm linux c++,Arm Linux交叉编译Xalan-C++

1. Xalan-C++源代码下载

2. Xalan-C++帮助文档

Xalan-C++需要Xerces-C++的支持。所以需要先下载和编译Xerces-C++。注意版本匹配, Xalan-C++ 1.11需要Xerces-C++ 3.0以上的版本。

之前的版本不建议使用,对Linux支持不是很好

3.Xerces-C++源代码下载

4.Xerces-C++交叉编译

#!/bin/sh

XALAN_SRC_PATH=/root/Documents/work_space/xalan-c/xalan-c

XERCES_SRC_PATH=/root/Documents/work_space/xerces-c/xerces-c-3.1.0

GCC=your-cross-compile-path/your-gcc

GPP=your-cross-compile-path/your-g++

export XERCESCROOT=your-install-pathecho ${XALAN_SRC_PATH}

echo ${XERCES_SRC_PATH}

cd $XERCES_SRC_PATH

if [ $? -ne 0 ]; then

echo "failed"

else

./configure --disable-static CC=${GCC} CXX=${GPP} --prefix=${XERCESCROOT} --host=arm-linux

if [ $? -ne 0 ]; then

echo "failed"

else

make install

fi

fi

5. Xerces-C++帮助文档

源代码的doc/index.html里面有

6.Xalan-C++交叉编译

Xalan-C在交叉编译过程中会使用到自己生成的MsgCreator,所以如果编译机器和目标机器的可执行程序不一致,可能会导致编译失败。

所以这里要采用特殊的方法。

修改…./xalan-c-1.11/c/src/xalanc/Utils/MsgCreator/Malefile.in文件

将XSL_BIN_DIR改成XSL_BIN_TMP_DIR,然后在编译脚本里加上XSL_BIN_TMP_DIR这个变量路径,指向本及可执行的MsgCreator程序(可以是之前本机编译好的程序)

注意,MsgCreator还依赖Xerces生成的库,因此不要忘记在脚本里加上

下面是参考编译脚本:

#!/bin/sh

XERCESCROOT=/opt/project/dependencies/gnueabi/xerces

XALANCROOT=/root/Documents/work_space/xalan-c-1.11/c

GCC=your-cross-compile-path/your-gcc

GPP=your-cross-compile-path/your-g++

INSTALL_PATH=/opt/project/dependencies/gnueabi/xalan

XSL_BIN_TMP_DIR=/root/Documents/work_space/xalan-c-1.11/c/binTmp

export XERCESCROOT

export XALANCROOT

export XSL_BIN_TMP_DIR

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/project/dependencies/x86/xerces/lib:/opt/project/dependencies/x86/xerces/bin

cd ${XALANCROOT}

if [ $? -ne 0 ]; then

echo "failed"

else

./runConfigure -p linux -c ${GCC} -x ${GPP} -P ${INSTALL_PATH} -C--host=arm-linux

if [ $? -ne 0 ]; then

echo "failed"

else

make clean

make install

fi

fi

10. 其它细节

本文只是记录一些比较大的坑,一些正常流程可以参考帮助文档。

68f724bad5a33d9a9f6bd2ca7369ecb7.png

标签:xalan,Xalan,C++,编译,Linux,PATH,your

来源: https://www.cnblogs.com/chenfeibiao/p/12187302.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值