Skip to content

AWB Installation Centos

Kermin E Fleming edited this page Feb 15, 2015 · 2 revisions

AWB Installation Centos

Required packages for awb/asimcore

As root install required packages:

% sudo yum install ncurses ncurses-devel readline-devel gtk2-devel libXmu-devel libXi-devel
% sudo yum install qt qt-devel qt-config qt-designer
% sudo yum install subversion cvs git-core
% sudo yum install python python-devel
% sudo yum install autoconf scons gperf flex bison
% sudo yum install tcl popt-devel
% sudo yum install libxml2

Install some perl modules

% HOME=/root sudo cpan
....you can probably use the default for all the questsions, except you need to select a site
cpan> install enum
cpan> install Term::ReadLine::Gnu
cpan> install IO::Pty
cpan> quit

Build and install PerlQt

Note: you need to start a new shell if you just installed the qt development libraries

% mkdir -p /project/software/library; cd /project/software/library

The source code for PerlQt is maintained primarily in KDE's git repo. 
Downloading the code from there is the latest development version. 
In KDE, smokegen and smokeqt into multiple submodules, so if you 
are building from the KDE sources, you need to download and install 
smokegen and smokeqt separately (assuming no binary packages are 
available from your distro). To build from KDE sources, you would do this:
 
Download the required sources from the KDE git repositories:
 
% git clone git://anongit.kde.org/smokegen
% git clone git://anongit.kde.org/smokeqt
% git clone git://anongit.kde.org/perlqt
 
Build smokegen:
 
% cd smokegen
% mkdir build; cd build;
% cmake ..
% make
% make install
% cd ../..
 
Build QImageBlitz:
 
% wget http://download.kde.org/stable/qimageblitz/qimageblitz-0.0.6.tar.bz2
% tar -xvjf qimageblitz-0.0.6.tar.bz2
% cd qimageblitz-0.0.6
% mkdir build; cd build;
% cmake ..
% make -j8
% sudo make install
 
Build Qwt-6.1.0:
 
% wget http://downloads.sourceforge.net/project/qwt/qwt/6.1.0/qwt-6.1.0.tar.bz2
% tar -xvjf qwt-6.1.0.tar.bz2
% cd qwt-6.1.0
 
% gedit qwtconfig.pri
 
Change the installation prefix to /usr/local
 
unix {
    QWT_INSTALL_PREFIX = /usr/local
}
 
Build the Qwt library:
 
% mkdir build; cd build;
% qmake-qt4  ../qwt.pro
% make -j8
% sudo make install
 
% export QWT_ROOT=/usr/local
% export LD_LIBRARY=/usr/local/lib

Build QScintilla:
 
% wget http://sourceforge.net/projects/pyqt/files/QScintilla2/QScintilla-2.8.3/QScintilla-gpl-2.8.3.tar.gz
% tar -xvf QScintilla-gpl-2.8.3.tar.gz
% cd QScintilla-gpl-2.8.3
% mkdir build; cd build;
% qmake ../Qt4Qt5/qscintilla.pro
% make -j8
% sudo make install
 
Build smokeqt	

% cd smokeqt
% mkdir build; cd build;
% ccmake -Wno-dev ..
 
Set the following cmake configuration options:
 
Qwt5_Qt3_TENTATIVE_LIBRARY /usr/local/lib/libqwt.so
Qwt5_Qt4_TENTATIVE_LIBRARY /usr/local/lib/libqwt.so
WITH_Phonon                ON
WITH_QImageBlitz           ON
WITH_QScintilla            ON
WITH_QT3_SUPPORT           ON
WITH_Qwt5                  ON
 
% make -j8
% sudo make install
% cd ../..
 
Build perlqt4:
 
% cd perlqt
 
Fix a bug in the CMakeLists.txt files that incorrectly specifies a wrong install path, by applying the following patch:
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d10ae46..8af78ca 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -39,7 +39,7 @@ include (FindPerlMore)
 string(LENGTH "${PERL_INSTALL_PREFIX}" PERL_INSTALL_PREFIX_LEN)
 math(EXPR PERL_INSTALL_PREFIX_LEN "${PERL_INSTALL_PREFIX_LEN}+1")
 string(SUBSTRING ${PERL_SITE_ARCH_DIR} ${PERL_INSTALL_PREFIX_LEN} -1 CUSTOM_PERL_SITE_ARCH_DIR)
-file(TO_NATIVE_PATH "${CMAKE_INSTALL_PREFIX}/${CUSTOM_PERL_SITE_ARCH_DIR}" CUSTOM_PERL_SITE_ARCH_DIR)
+file(TO_NATIVE_PATH "/usr/local/lib64/perl5" CUSTOM_PERL_SITE_ARCH_DIR)
 set(CUSTOM_PERL_SITE_ARCH_DIR ${CUSTOM_PERL_SITE_ARCH_DIR} CACHE DIR "Custom installation directory for perl binary extension")
 
# the RPATH to be used when installing, but only if it's not a system directory
 
Continue to build perlqt:
 
% mkdir build; cd build;
% ccmake ..
 
Set the following cmake configuration options:
 
CMAKE_INSTALL_PREFIX         /usr/local
CUSTOM_PERL_SITE_ARCH_DIR    /usr/local/lib64/perl5
ENABLE_GUI_TESTS             ON
QT_QMAKE_EXECUTABLE          /project/software/library/qt/install/bin/qmake
Qwt5_Qt3_TENTATIVE_LIBRARY   /usr/local/lib/libqwt.so
Qwt5_Qt4_TENTATIVE_LIBRARY   /usr/local/lib/libqwt.so
Smoke_DIR                    /usr/local/share/smoke/cmake
USE_BUILD_DIRS_FOR_TESTS     OFF
WITH_Phonon                  ON
WITH_QImageBlitz             ON
WITH_QScintilla              ON
WITH_Qwt5                    ON
 
% make -j8
% sudo make install

(The above instructions to install PerlQt4 were provided by Elvis Dowson for RHEL 6.5 and were tested and modified by Mohit Gambhir for CentOS 7)

Required packages for FPGA-based designs

Additional packages

% sudo yum install expect-devel
% sudo yum install tbb-devel boost-devel
% sudo yum install perl-CPAN perl-Time-HiRes perl-local-lib
% sudo yum install graphviz-python

# Install python easy_install
% wget http://peak.telecommunity.com/dist/ez_setup.py
% python ez_setup.py 

# change python version in the following commands to the one that is installed
% sudo easy_install-2.7 python-graph-core
% sudo easy_install-2.7 python-graph-dot
% sudo easy_install-2.7 ply pycparser

Install Bluespec

Bluespec compiler can be downloaded and installed from Bluespec "website":http://wiki.bluespec.com/Home/Installing-Bluespec. 
The latest version of the Bluespec compiler - 2014.07.A - is required with LEAP

Build and install iverilog

% wget ftp://ftp.icarus.com/pub/eda/verilog/v0.9/verilog-0.9.7.tar.gz
% tar zxvf verilog-0.9.7.tar.gz

% cd verilog-0.9.7
% ./configure --prefix=/usr/local
% make
% sudo make install

% cd ..

Optionally build and install gtkwave (useful for debugging)

It requires tcl-devel, tk-devel and xz-devel packages.

% wget http://gtkwave.sourceforge.net/gtkwave-3.3.61.tar.gz
% tar zxvf gtkwave-3.3.61.tar.gz

% cd gtkwave-3.3.61
% ./configure --prefix=/usr/local
% make
% sudo make install

% cd ..

Required packages for m5

# yum install swig

Continue with the system-wide installation.