ig_installation.tex 3.92 KB
Newer Older
1
\section{Installation of Tapasco}%
2
\begin{enumerate}
3
  \item Extract the \tapasco{} archive to a suitable location.
4
5
%
\begin{lstlisting}[language=bash]
6
~$ mkdir tapasco && cd tapasco && tar xvzf ../REPARA_D5.1_v1.0.tar.gz
7
8
9
10
11
\end{lstlisting}
%
  \item Set the \code{TPC\_HOME} environment variable to that location, e.g.,
%
\begin{lstlisting}[language=bash]
12
~$ export TAPASCO_HOME=~/tapasco
13
14
15
\end{lstlisting}
%
  \item Make sure that the system has a working internet connection for the next step.
16
  \item Change into that directory and compile \tapasco{}:
17
        \begin{lstlisting}[language=bash]
18
19
20
~$ cd $TAPASCO_HOME && sbt compile && sbt doc
[info] Loading project definition from /tmp/tapasco/project
[info] Updating {file:/tmp/tapasco/project/}tapasco-build...
21
22
23
24
[info] Resolving org.scala-sbt#compiler-interface;0.13.1 ...

...
[info] Done updating.
25
[info] Set current project to tapasco (in build file:/tmp/tapasco/)
26
Building dependencies ...
27
make: Entering directory `/tmp/tapasco/arch/baseline'
28
mkdir -p lib
29
30
31
32
cc -g -O3 -fPIC -Iinclude -I../common/include -I/tmp/tapasco/platform/common/include -I../common/src -std=gnu99 -pedantic-errors -Wall -Werror  -shared -o lib/libtapasco-baseline-sim.so src/tapasco_sim.c src/tapasco_device.c src/tapasco_address_map.c ../common/src/tapasco_errors.c ../common/src/tapasco_functions.c ../common/src/tapasco_scheduler.c ../common/src/tapasco_jobs.c
cc -g -O3 -fPIC -Iinclude -I../common/include -I/tmp/tapasco/platform/common/include -I../common/src -std=gnu99 -pedantic-errors -Wall -Werror  -shared -o lib/libtapasco-baseline-bit.so src/tapasco_sim.c src/tapasco_device.c src/tapasco_address_map.c ../common/src/tapasco_errors.c ../common/src/tapasco_functions.c ../common/src/tapasco_scheduler.c ../common/src/tapasco_jobs.c
make: Leaving directory `/tmp/tapasco/arch/baseline'
make: Entering directory `/tmp/tapasco/platform/zynq'
33
34
35
36
37
38
39
40
41
mkdir -p lib
cd include && /opt/cad/mentor/modelsim/latest/modeltech/bin/vlib work  && /opt/cad/mentor/modelsim/latest/modeltech/bin/vlog -dpiheader platform_dpi.h -sv ../sv/platform-dpi.sv +incdir+../include && rm -rf work transcript
Model Technology ModelSim SE-64 vlog 10.0c_1 Compiler 2011.08 Aug 26 2011
-- Compiling module tb

Top level modules:
  tb
cc -O3 -fPIC -I/opt/cad/mentor/modelsim/latest/modeltech/include -Iinclude -I../common/include -std=gnu99 -pedantic-errors -Wall -Werror  -shared -pthread -o lib/libplatform-server.so src/platform_server.c
cc -O3 -fPIC -I/opt/cad/mentor/modelsim/latest/modeltech/include -Iinclude -I../common/include -std=gnu99 -pedantic-errors -Wall -Werror  -shared -pthread -o lib/libplatform-client.so src/platform_client.c
42
43
make: Leaving directory `/tmp/tapasco/platform/zynq'
[info] Updating {file:/tmp/tapasco/}tapasco...
44
45
[info] Resolving com.dongxiguo#fastring_2.10;0.2.4 ...
[info] Done updating.
46
[info] Compiling 11 Scala sources to /tmp/tapasco/target/scala-2.10/classes...
47
48
[success] Total time: 13 s, completed Feb 10, 2015 5:45:43 PM

49
50
51
[info] Loading project definition from /tmp/tapasco/project
[info] Set current project to tapasco (in build file:/tmp/tapasco/)
[info] Main Scala API documentation to /tmp/tapasco/target/scala-2.10/api...
52
53
54
55
56
57
58
59
60
61
62
63
model contains 21 documentable templates
[info] Main Scala API documentation successful.
[success] Total time: 10 s, completed Feb 10, 2015 5:45:56 PM
~$ 
        \end{lstlisting}
\end{enumerate}
The last step should trigger a number of downloads via \gloss{sbt}, C library compilation in subdirectories \code{arch} and \code{platform} and, finally, compilation of the main Scala code.
Please make sure that the system has a working internet connection for this step.
Downloading the packages via sbt is usually only necessary once, an internet connection is not required after the first downloads have succeeded.
Manual installation of the packages is also possible, if the system cannot be connected to the internet.
Please refer to the sbt documentation for instructions on how to make packages available to sbt with a manual installation.