所需资源:
1、j2sdk-1_4_2_12-linux-i586.bin,不推荐使用jdk1.5及以上版本
2、gcc version 4.3.3交叉编译工具链
3、phoneme_feature-mr4-rel-src-b01-20_apr_2009 源代码
4、gcc version 4.1.2 20080704 (Red Hat 4.1.2-48),gcc编译器,推荐该版本。
第一步:安装 j2sdk1.4.2,并设置此 jdk 的环境变量。视需要配置 “etc/profile” 或用户主目录下的 “.bash_profile”,添加如下代码,该步骤在makefile中指定“JDK_DIR”。
JAVA_HOME=/usr/java/j2sdk1.4.2_12
PATH="$JAVA_HOME/bin:/sbin:/usr/sbin/:/usr/local/sbin/:$PATH"
CLASSPATH=".:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre"
export JAVA_HOME PATH CLASSPATH
第二步:安装交叉工具链 gcc,将交叉工具链工具包解压至相应目录即可,该步骤在makefile中指定“GNU_TOOLS_DIR”。
第三步:修改 phoneME Feature 源码根目录下的makefile,内容如下:
export ME_ROOT=$(shell pwd)
export COMPONENTS_DIR=$(ME_ROOT)
export Scripts=`pwd`
export Output=$(ME_ROOT)/output
export Log=$(ME_ROOT)/log.txt
export JDK_DIR=/usr/java/j2sdk1.4.2_12
export GNU_TOOLS_DIR=$(ME_ROOT)/CrossCompiler
#export USE_DEBUG=true
#export USE_DEBUG_ROMGEN=true
#export USE_DEBUG_ROMGEN_SYMBOLS=true
export ENABLE_COMPILATION_WARNINGS=true
exportRESTRICTED_CRYPTO_DIR=$(ME_ROOT)/restricted_crypto
all : dump pcsl cldc midp copy_ui_lib
dump :
@echo-e "---------start build phoneME feature--------------------"
pcsl ::
@echo-e "---------build pcsl-----------------------------------"
make-C $(ME_ROOT)/pcsl \
PCSL_PLATFORM=linux_arm_gcc\
PCSL_OUTPUT_DIR=$(Output)/pcsl\
NETWORK_MODULE=bsd/generic\
TOOLS_DIR=$(ME_ROOT)/tools\
TOOLS_OUTPUT_DIR=$(Output)/tools
cldc ::
@echo-e "---------build cldc-----------------------------------"
make-C $(ME_ROOT)/cldc/build/linux_arm \
JDK_DIR=$(JDK_DIR)\
ENABLE_PCSL=true\
ENABLE_ISOLATES=true\
PCSL_OUTPUT_DIR=$(Output)/pcsl\
JVMWorkSpace=$(ME_ROOT)/cldc\
JVMBuildSpace=$(Output)/cldc\
TOOLS_DIR=$(ME_ROOT)/tools\
TOOLS_OUTPUT_DIR=$(Output)/tools
midp ::
@echo-e "---------midp----------------------------------------"
make-C $(ME_ROOT)/midp/build/linux_fb_gcc \
GNU_TOOLS_DIR=$(GNU_TOOLS_DIR)\
JDK_DIR=$(JDK_DIR)\
PCSL_OUTPUT_DIR=$(Output)/pcsl\
CLDC_DIST_DIR=$(Output)/cldc/linux_arm/dist\
TOOLS_DIR=$(ME_ROOT)/tools\
TOOLS_OUTPUT_DIR=$(Output)/tools\
MIDP_OUTPUT_DIR=$(Output)/midp\
CPU=arm
clean: pclean cclean mclean
pclean :
rm-rf $(Output)/pcsl
cclean :
rm-rf $(Output)/cldc
mclean :
rm-rf $(Output)/midp
第四步:进入源码根目录进行make。
第五步:在生成目录output下对生成的文件进行验证。