歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

在Ubuntu 10.10下安裝SimpleScalar

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

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

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

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

Copyright © Linux教程網 All Rights Reserved