歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在Ubuntu 10.10下安裝SimpleScalar

在Ubuntu 10.10下安裝SimpleScalar

日期:2017/2/28 15:53:08   编辑:Linux教程

環境:Ubuntu 10.10 ; gcc 4.4.5;

體系結構實驗需要用到。裝起來有夠麻煩的。主要是東西都太老了,需要用到的交叉編譯器gcc的版本都是2.7.2啊,SimpleScalar上寫的居然是"newer version"(相對與自帶的2.6版本的)。基本上每次make都是一個錯。。。照著老師的指導書一步步裝還是有錯誤,要不就是我那一步出現了錯誤。費了九牛二虎之力才裝好。最後靠的是國外大學的資源來安裝的,網站上有一個安裝腳本,在我的Ubuntu10.10上成功執行。

先把網址曬一下:http://www.ann.ece.ufl.edu/courses/eel5764_10fal/project/

貌似是佛羅裡達大學一位助理教授授課時用到的資料,裡面有一些安裝SimpleScalar和一個安裝的腳本buildSS。安裝說明基本跟我的實驗指導書上的差不多,最受用的還是那個安裝腳本。多謝這位老師啊!

直接貼上腳本代碼以備後用:

  1. NAME=Simplescalar
  2. PACKAGE=simplescalar
  3. TOOL=simpletools-2v0
  4. UTIL=simpleutils
  5. SIM=simplesim
  6. # Update Ubuntu Software Package
  7. sudo apt-get update
  8. # Getting required applications
  9. sudo apt-get install flex-old bison build-essential
  10. # Create Simplescalar Directory
  11. cd
  12. mkdir $NAME
  13. cd $NAME
  14. # Getting simplescalar tar file
  15. wget http://csrl.unt.edu/downloads/$PACKAGE.tgz
  16. # Extraction
  17. tar xvfz $PACKAGE.tgz
  18. export CC="gcc"
  19. # Setting up installation
  20. export HOST=i686-unknown-linux
  21. export TARGET=sslittle-na-sstrix
  22. export IDIR=~/$NAME
  23. # Build Simplescalar tools
  24. cd ~/$NAME
  25. tar xvfz $TOOL.tgz
  26. rm -rf gcc-2.6.3
  27. # Build Simplescalar utils
  28. cd ~/$NAME
  29. tar xvfz $UTIL-990811.tar.gz
  30. cd $UTIL-990811
  31. ./configure --host=$HOST --target=$TARGET --with-gnu-as --with-gnu-ld --prefix=$IDIR
  32. make CC=gcc
  33. sudo make install CC=gcc
  34. # Build Simplescalar
  35. cd ~/$NAME
  36. tar xvfz $SIM-3v0d.tgz
  37. cd $SIM-3.0
  38. make config-pisa
  39. make CC=gcc
  40. # Build Compiler
  41. cd ~/$NAME
  42. tar xvfz gcc-2.7.2.3.ss.tar.gz
  43. cd ~/$NAME/gcc-2.7.2.3
  44. export PATH=$PATH:$IDIR/simpleutils-990811/sslittle-na-sstrix/bin
  45. ./configure --host=$HOST --target=$TARGET --with-gnu-as --with-gnu-ld --prefix=$IDIR
  46. # Fix file errors
  47. make LANGUAGES="c c++" CFLASS=-O3 CC="gcc"
  48. sed -i 's/return \"FIXME\\n/return \"FIXME\\n\\/g' ~/$NAME/gcc-2.7.2.3/insn-output.c
  49. make LANGUAGES="c c++" CFLASS=-O3 CC="gcc"
  50. wget http://www.ict.kth.se/courses/IS2202/ar
  51. wget http://www.ict.kth.se/courses/IS2202/ranlib
  52. chmod 700 ar
  53. chmod 700 ranlib
  54. sudo cp ar $IDIR/sslittle-na-sstrix/bin/ar
  55. sudo cp ranlib $IDIR/sslittle-na-sstrix/bin/ranlib
  56. rm ar
  57. rm ranlib
  58. chmod +w ~/$NAME/gcc-2.7.2.3/obstack.h
  59. sed -i 's/next_free)++/next_free++)/g' ~/$NAME/gcc-2.7.2.3/obstack.h
  60. make LANGUAGES="c c++" CFLASS=-O3 CC="gcc"
  61. sed -i '98i\
  62. #define BITS_PER_UNIT 8
  63. ' ~/$NAME/gcc-2.7.2.3/libgcc2.c
  64. #make LANGUAGES="c c++" CFLASS=-O3 CC="gcc"
  65. cp $IDIR/gcc-2.7.2.3/patched/sys/cdefs.h $IDIR/sslittle-na-sstrix/include/sys/cdefs.h
  66. make LANGUAGES="c c++" CFLASS=-O3 CC="gcc"
  67. make enquire CC=gcc
  68. sudo make install LANGUAGES="c c++" CFLASS=-O3 CC="gcc" PATH=$PATH:~/$NAME/bin
  69. # Done!
  70. exit 0

如果已經下載了所需要的tar包,可以把

  1. wget http://csrl.unt.edu/downloads/$PACKAGE.tgz

這一行去掉。也可以直接下載,就是速度可能有點慢。這個包裡面已經包含了所有需要的工具。使用simscalar-cheetath相應該一下腳本即可。

Copyright © Linux教程網 All Rights Reserved