My steps to cross compile Jikes RVM for PowerPC on X86:
1. create directory $HOME/cross-ppc/
# build cross-tools
2. download crosstools 0.28rc25 from http://www.kegel.com/crosstool/ and un-tar it under the above directory
3. cd $HOME/cross-ppc/
4. modify crosstool-0.28-rc25/demo-ppc750.sh, set RESULT_TOP=$HOME/cross-ppc/result
5. sh crosstool-0.28-rc25/demo-ppc750.sh
#setup DSS
6. download dss from http://www-ali.cs.umass.edu/DSS/download.htm and untar it
7. set environment variable DSS_ROOT and DSS_BUILD
8. build dss
# build Jikes RVM
9. download Jikes RVM
10. set environment variable RVM_ROOT, RVM_BUILD PATH according to convention
11. set environment variable RVM_HOST_CONFIG=$RVM_ROOT/rvm/config/i686-pc-linux-gnu
RVM_TARGET_CONFIG=$RVM_ROOT/rvm/config/powerpc-unknown-linux-gnu
PPCPATH=$HOME/cross-ppc/result/powerpc-750-linux-gnu/gcc-
12. modify $RVM_ROOT/rvm/config/powerpc-unknown-linux-gnu, set variable CC and CPLUS point to cross compiler.
export CC="$PPCPATH/gcc -w -g -O -Wa,-mppc"
export CPLUS="$PPCPATH/g++ -w -g -O"
13. modify $RVM_ROOT/rvm/src/tools/configuring/printf_handles_percent_z.sh to disable the execution of testing to check printf.
14. modify $RVM_ROOT/rvm/bin/jBuildClasspathJar:152, modify the configure line to
CC=$PPCPATH/gcc $original line$ --host=powerpc-unknown-linux-gnu
15. modify $RVM_ROOT/classpath/classpath/config.guess to make it to be only
echo powerpc-unknown-linux-gnu
16. modify $RVM_ROOT/rvm/bin/jconfigure to disable machine checking at line 3078 to 3082.
17. jconfigure prototype
18. cd $RVM_BUILD
19. ./jbuild
comment:
1. I don't know step 15 is necessary or not. My one try must modify it to succeed while another needn't.
2. When running DSS, I map /etc /lib /usr/lib all to $HOME/cross-ppc/result/powerpc-750-linux-gnu/gcc-
浙公网安备 33010602011771号