Difference between revisions of "Desktop Setup"

From Vlsiwiki
Jump to: navigation, search
(Installation)
(Installation)
Line 51: Line 51:
 
Install the 64bit packages selecting development and latex packages.
 
Install the 64bit packages selecting development and latex packages.
  
* Update the yum repository (EPEL packages)
+
# Update the yum repository (EPEL packages)
  
 
  rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm
 
  rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm
  
* Update distribution
+
# Update distribution
  
 
  yum update -y
 
  yum update -y
  
* Editing packages
+
# Editing packages
  
 
  yum install -y aspell-en emacs openoffice firefox  
 
  yum install -y aspell-en emacs openoffice firefox  
  
* Mathemathics packages
+
# Mathemathics packages
  
 
  yum install -y R blas-devel gnuplot  
 
  yum install -y R blas-devel gnuplot  
  
* Version control and cmake
+
# Version control and cmake
  
 
  yum install -y cvs cmake git-all
 
  yum install -y cvs cmake git-all
  
* SESC Development packages
+
# SESC Development packages
  
 
  yum install -y bison ctags cscope doxygen gcc gcc-c++ gcc-gfortran gcc-java m4 flex bison  
 
  yum install -y bison ctags cscope doxygen gcc gcc-c++ gcc-gfortran gcc-java m4 flex bison  
  
* Miscellaneous Development
+
# Miscellaneous Development
  
 
  yum install -y ant antlr boost-devel  fftw-devel vim-enhanced valgrind python-devel  qt4
 
  yum install -y ant antlr boost-devel  fftw-devel vim-enhanced valgrind python-devel  qt4
  
* Compatiblity packages
+
# Compatiblity packages
  
 
  yum install -y compat-db compat-db compat-gcc-34 compat-gcc-34-c++ compat-gcc-34-g77 compat-glibc compat-glibc compat-glibc-headers compat-libf2c-34 compat-libgcc-296 compat-libstdc++-296 compat-libstdc++-33 compat-libstdc++-33 compat-readline43
 
  yum install -y compat-db compat-db compat-gcc-34 compat-gcc-34-c++ compat-gcc-34-g77 compat-glibc compat-glibc compat-glibc-headers compat-libf2c-34 compat-libgcc-296 compat-libstdc++-296 compat-libstdc++-33 compat-libstdc++-33 compat-readline43
  
* Ruby packages
+
# Ruby packages
  
 
  yum install -y eruby-devel eruby-libs ruby-devel ruby-docs ruby-mode ruby-racc ruby-rdoc ruby-ri ruby-tcltk rubygem-rake rubygems
 
  yum install -y eruby-devel eruby-libs ruby-devel ruby-docs ruby-mode ruby-racc ruby-rdoc ruby-ri ruby-tcltk rubygem-rake rubygems
Line 90: Line 90:
 
  gem install rake rcov ruby-prof gecoder-with-gecode
 
  gem install rake rcov ruby-prof gecoder-with-gecode
  
* MT development
+
# MT development
  
 
  wget http://packages.sw.be/opencv/opencv-1.0.0-1.el5.rf.x86_64.rpm
 
  wget http://packages.sw.be/opencv/opencv-1.0.0-1.el5.rf.x86_64.rpm
Line 99: Line 99:
 
  gem install gosu
 
  gem install gosu
  
* Setup IP tables
+
# Setup IP tables
 
  Note: The iptables config file is only readable by root.   
 
  Note: The iptables config file is only readable by root.   
  
  * If you have root access a mascd machine:
+
  # If you have root access a mascd machine:
  sudo scp mada0:/mada/server/setup/setup/iptables /etc/sysconfig/iptables
+
 
   
 
   
  * If you only have sudo access on some mascdX machine:
+
  sudo scp mada0:/mada/server/setup/setup/iptables /etc/sysconfig/iptables
  ssh into that mascd machine, where X is the machine with the file in /tmp  
+
  sudo cp /etc/sysconfig/iptables /tmp
+
# If you only have sudo access on some mascdX machine:
  sudo chmod 777 /tmp/iptables
+
ssh into that mascd machine, where X is the machine with the file in /tmp  
 +
sudo cp /etc/sysconfig/iptables /tmp
 +
sudo chmod 777 /tmp/iptables
  
  * Copy the file to your machine and restore correct permissions
+
  # Copy the file to your machine and restore correct permissions
  sudo scp madaX:/tmp/iptables /etc/sysconfig/iptables
+
sudo scp madaX:/tmp/iptables /etc/sysconfig/iptables
  sudo chmod 600 /etc/sysconfig/iptables
+
sudo chmod 600 /etc/sysconfig/iptables
  
  * Lastly, erase the /tmp file on the mascdX machine
+
  # Lastly, erase the /tmp file on the mascdX machine
  ssh into it, rm /tmp/iptables
+
ssh into it, rm /tmp/iptables
  
* Setup services correctly
+
# Setup services correctly
  
 
  yum install -y chkconfig
 
  yum install -y chkconfig
Line 128: Line 129:
 
  for a in `grep "5:off" setup.serv | cut -d0 -f1`; do chkconfig --level 5 $a off; done
 
  for a in `grep "5:off" setup.serv | cut -d0 -f1`; do chkconfig --level 5 $a off; done
  
* Setup automount
+
# Setup automount
  
 
  mkdir /mada
 
  mkdir /mada
Line 135: Line 136:
 
  service autofs restart
 
  service autofs restart
  
* LDAP setup
+
# LDAP setup
  
 
  scp mada1:/etc/ldap.conf /etc/
 
  scp mada1:/etc/ldap.conf /etc/

Revision as of 21:37, 13 March 2009

Distribution Setup

We support three main Linux distributions (CentOS, Fedora, ubuntu), but you need to maintain some security configuration and packages. Each distribution has its own problems, check the issues before deciding what distribution to install. The distributions should:

  • Compile and run SESC and SESCTherm (with CUDA support)


  • Run synos rake command
 svn co svn+ssh://mada0.cse.ucsc.edu/mada/server/svn/synos
 cd synos/scoore/fpu
 rake
  • Execute vcs
 cd synos/scoore/fpu
 rake test:softfloat_tb
  • Execute synplicity_pro
 cd synos/scoore/fpu
 rake fpga:fpu v=1
 ./synplify_fpu.sh
  • Execute dc_shell-t
 cd synos/scoore/fpu
 rake asic:fpu v=1
 ./dc_fpu.sh
  • Run opencv applications (cd mthd/mgesture)
  • Run gosu examples (cd mthd/hdui)

CentOS 5.2

WORKS

sesc,sesctherm, synos, vcs, synplify_pro, dc_shell, opencv

FAILS

* gosu (gem rmagic and ruby-opengl package fail to install)
* sshfs (userspace ssh filesystem mount utility)
* Most modern linux kde related apps

Installation

Install the 64bit packages selecting development and latex packages.

# Update the yum repository (EPEL packages)
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm
# Update distribution
yum update -y
# Editing packages
yum install -y aspell-en emacs openoffice firefox 
# Mathemathics packages
yum install -y R blas-devel gnuplot 
# Version control and cmake
yum install -y cvs cmake git-all
# SESC Development packages
yum install -y bison ctags cscope doxygen gcc gcc-c++ gcc-gfortran gcc-java m4 flex bison 
# Miscellaneous Development
yum install -y ant antlr boost-devel  fftw-devel vim-enhanced valgrind python-devel  qt4
# Compatiblity packages
yum install -y compat-db compat-db compat-gcc-34 compat-gcc-34-c++ compat-gcc-34-g77 compat-glibc compat-glibc compat-glibc-headers compat-libf2c-34 compat-libgcc-296 compat-libstdc++-296 compat-libstdc++-33 compat-libstdc++-33 compat-readline43
# Ruby packages
yum install -y eruby-devel eruby-libs ruby-devel ruby-docs ruby-mode ruby-racc ruby-rdoc ruby-ri ruby-tcltk rubygem-rake rubygems
gem install --remote rspec
gem install rake rcov ruby-prof gecoder-with-gecode
# MT development
wget http://packages.sw.be/opencv/opencv-1.0.0-1.el5.rf.x86_64.rpm
wget http://packages.sw.be/opencv/opencv-devel-1.0.0-1.el5.rf.x86_64.rpm
rpm -i opencv*.rpm
yum install SDL_Pango-devel SDL_mixer-devel ImageMagick
gem install gosu
# Setup IP tables
Note: The iptables config file is only readable by root.  
# If you have root access a mascd machine:

sudo scp mada0:/mada/server/setup/setup/iptables /etc/sysconfig/iptables

# If you only have sudo access on some mascdX machine:
#  ssh into that mascd machine, where X is the machine with the file in /tmp 
#  sudo cp /etc/sysconfig/iptables /tmp
#  sudo chmod 777 /tmp/iptables
# Copy the file to your machine and restore correct permissions
#  sudo scp madaX:/tmp/iptables /etc/sysconfig/iptables
#  sudo chmod 600 /etc/sysconfig/iptables
# Lastly, erase the /tmp file on the mascdX machine
#  ssh into it, rm /tmp/iptables
# Setup services correctly
yum install -y chkconfig
scp mada0:/mada/server/setup/setup/setup.serv /root/setup.serv
for a in `grep "3:on" setup.serv  | cut -d0 -f1`; do chkconfig --level 3 $a on;  done
for a in `grep "3:off" setup.serv | cut -d0 -f1`; do chkconfig --level 3 $a off; done
for a in `grep "4:on" setup.serv  | cut -d0 -f1`; do chkconfig --level 4 $a on;  done
for a in `grep "4:off" setup.serv | cut -d0 -f1`; do chkconfig --level 4 $a off; done
for a in `grep "5:on" setup.serv  | cut -d0 -f1`; do chkconfig --level 5 $a on;  done
for a in `grep "5:off" setup.serv | cut -d0 -f1`; do chkconfig --level 5 $a off; done
# Setup automount
mkdir /mada
unalias cp
scp -f mascd1:/etc/auto.master mascd1:/etc/auto.mada /etc/
service autofs restart
# LDAP setup
scp mada1:/etc/ldap.conf /etc/
scp mada1:/etc/nsswitch.conf /etc
scp -r mada1:/etc/openldap/ldap.conf /etc/openldap/
scp -r mada1:/etc/openldap/cacerts/cert8.pem /etc/openldap/cacerts/

Ubuntu

WORKS

FAILS

Installation

Fedora

===WORKS=== Fedora 10 x64 NOTE: most software is 64 bit, so make sure the x64 arch type is installed

    • Synplify Pro 9.62 needs:

a compatible libstdc++

install by:

   sudo yum install -y compat-libstdc++-33-3.2.3-64.i386 compat-libstdc++-33-3.2.3-64.x86_64


DONE

    • VCS 2008-09 needs:

a compatible libstdc++ libtermcap

install by:

   sudo yum install -y compat-libstdc++-33-3.2.3-64.i386 compat-libstdc++-33-3.2.3-64.x86_64
  copy /lib64/libtermcap.so.2* from any mascd machine into your /lib64
  then rebuild linker database:
  sudo ldconfig
  Note:  If using NFS mounted user directory, make sure to wipe out ./csrc directory (under which you invoke VCS) 
         you so that VCS rebuilds the design with the new GCC, otherwise it will not work.  This may
         become necessary if switching from Fedora to CentOS machines frequently.

DONE

  • GOSU (ruby OpenGL lib)

First install Ruby and the like...

  sudo yum install -y ruby-1.8.6.287-2.fc10.x86_64 ruby-libs-1.8.6.287-2.fc10.x86_64 rubygem-rake-0.8.3-1.fc10.noarch ruby-devel-1.8.6.287-2.fc10.x86_64
  sudo yum install -y rubygems-1.3.1-1.fc10.noarch ruby-rdoc-1.8.6.287-2.fc10.x86_64  ruby-mode-1.8.6.287-2.fc10.x86_64 ruby-irb-1.8.6.287-2.fc10.x86_64

Then Install SDL audio related stuff

  sudo yum install -y SDL-1.2.13-7.fc10.i386  SDL-1.2.13-7.fc10.x86_64  SDL-devel-1.2.13-7.fc10.x86_64 
  sudo yum install -y SDL_mixer-1.2.8-9.fc10.x86_64 SDL_mixer-devel-1.2.8-9.fc10.x86_64 SDL_mixer-1.2.8-9.fc10.i386 SDL_mixer-devel-1.2.8-9.fc10.i386
     

Finally Gosu itself

  sudo gem install gosu


DONE


FAILS

Installation