Contents:
Software Requirements
TCW is written in Java and was developed under Linux and Mac
(see Mac Installation).
A 64-bit multi-processor is needed to build the TCW database(s).
TCW was compiled into a jar file using Java version 17.0.10,
so should work on any subsequent Java release.
Required:
TCW v4.0.5 (July 2025): Test all TCW programs using the demo files, plus downloaded a UniProt database and GO
with runAS and verified it worked. RunDE was tested with edgeR and goSeq.
Machine | MySQL | Java | Core (CPU) | Memory | Purchased
| 1. MacOS M4 (aarch64)1
| MySQL v8.0.42
| 24 from Oracle
| M4 12-Core | 48Gb | 2025
| 2. MacOS x86_64
| MySQL v8.0.33, MariaDB 11.0.2
| 17, 20, 24 from
Adoptium and Oracle
| 3.2 GHz 6-Core | 64Gb | 2018
| 3. Linode2 (Ubuntu 22.04.2 LTS)
| MySQL 8.0.33 | 17 | Nanode | 1Gb | 2023
|
1MacOS M4: Cap3, OrthoMCL and Muscle are not supplied for this machine.
The user can supply cap3 in the Ext/macM4/CAP3 directory if they want assembly to work.
2Linux/Linode: rJava did not install successfully,
so the runDE could not be tested.
TCW v4.0.4 (July 2022): Used to create multiple large TCW comparative projects with expression levels.
Machine | MySQL | Java | Core (CPU) | Memory | Purchased
| Linux x86.64 (Centos 7)
| MariaDB v10.4.12
| v1.8
| 3.2 Ghz AMD 24-Core
| 128Gb
| 2011
|
See Summary for timings.
Step 1: Decide where you want the main TCW directory to go, and untar the package in that location.
tar -xvf TCW_4.tar.gz
The untar will create a TCW_4 directory, with the following content:
Executables:
execLoadLib execAssm execAnno
runAS runDE runSingleTCW runMultiTCW
viewSingleTCW viewSingleTCW
Directories:
java/jars Ext/mac Ext/linux doc
R-scripts scripts projects
Text files:
HOSTS.cfg README LICENSE
Step 2: MySQL must be installed and running with read AND write access.
To verify, type:
mysql -u <username> -p
The program should prompt you for the password, and then
display the "mysql>" prompt. Type "exit" to return to the shell command line.
Note:
- The user must have sufficient privileges to create a new database.
- If you will be using the optional assembly feature, Innodb table must be enabled.
- Execute "./runSingletTCW -v", which will check some variable that can influence execution times.
Also see Trouble MySQL.
Step 3: Open the HOSTS.cfg file in an editor.
DB_host=localhost
DB_user=
DB_password=
Add your database username and password to the two lines DB_user and DB_password
Step 4: Test external programs
Check that the external programs have executable permissions.
On linux, check Ext/linux; on MacOS x86_64, check Ext/mac; on MacOS M4 (aarch64), check Ext/macM4.
You may want to run the compiled programs at the command line to see if they execute, e.g.
./diamond
Error: Syntax: diamond COMMAND [OPTIONS]. To print help message: diamond help
The diamond error indicates it ran. If are running on MacOS,
see MacOS - External.
Please read the section below on "Supplied external software.
Step 5: Run runAS (see Annotation Setup) to obtain UniProt files and GO database.
Other annotation databases can also be used, but TCW provides GO support with UniProt.
Software | Source | Additional info |
R | R Project |
Used for the TCW runDE to compute differential expression (DE).
|
RJava for DE (differential expression)
Step 1. Start R and type:
>install.packages("rJava")
>system.file("jri", package="rJava")
The 2nd command states where the jri package is. Enter it for the JPATH in the next step.
Step 2. Edit the runDE script, uncomment the correct path or change to the correct path:
#JPATH=/usr/lib64/R/library/rJava/jri # e.g. linux
#JPATH=/Library/Frameworks/R.framework/Resources/library/rJava/jri # e.g. Mac
Step 3. You must set the R_HOME environment variable, e.g.
export R_HOME=/usr/lib64/R # for Linux using bash or zsh
export R_HOME=/Library/Frameworks/R.framework/Resources # for MacOS using bash or zsh
R packages for DE
In order to use edgeR, DEseq2 and GOseq, start R and type:
>if (!requireNamespace("biocManager", quietly=TRUE))
>install.packages("BiocManager")
>BiocManager::install("edgeR")
>BiocManager::install("goseq")
>BiocManager::install("DESeq2")
As R changes, there may be changes to the above: see Bioconductor for the latest instructions.
You do not need to do anything to use the supplied packages. They are in the release directories
/Ext/linux and /Ext/mac; TCW determines which to use.
Software | Version | Source | Used For |
Supplied packages for singleTCW and multiTCW |
BLAST | 2.10 |
blast.ncbi.nlm.nih.gov/ |
runSingleTCW: Assembly and annotation.
viewSingleTCW: Comparing a sequence against others.
runMultiTCW: Comparing all sequences against themselves.
viewMultiTCW: Comparing a sequence against others.
|
DIAMOND |
v2.0.11.149 |
github.com/bbuchfink/diamond
| runSingleTCW: Annotation.
viewSingleTCW: Comparing a sequence against AA sequences.
runMultiTCW: Comparing all AA sequences against themselves.
viewMultiTCW: Comparing a sequence against AA sequences.
|
Supplied packages for singleTCW |
CAP3 | 2007 |
seq.cs.iastate.edu/cap3.html |
runSingleTCW: Optional assembly. |
Supplied packages for multiTCW |
MAFFT | v7.407 |
mafft.cbrc.jp/alignment/software/ |
Computing multiple alignment of clusters for scoring and viewing |
MUSCLE | 3.8.31 |
www.drive5.com/muscle |
Computing multiple alignment of clusters for scoring and viewing |
MstatX | 11-Nov-18 |
github.com/gcollet/MstatX |
Scoring multiple alignment of clusters |
KaKs_Calculator |
v.1.2
|
bigd.big.ac.cn/tools/ kaks/download |
KaKs analysis in runMultiTCW. |
OrthoMCL is also supplied for runMultiTCW, but disabled. The /Ext/mac and /Ext/linux directories
have the code with a README.TCW on how to make them work within TCW.
By default, /Ext/macM4 does not have CAP3 or Muscle.
These programs will not be available from the interface unless the user provides them.
MacOS Verify Catalina and later versions require verification of external software. See
(see Running Ext/mac external programs).
The references for all TCW external software are provided in external references
If any of the supplied executables do not work, you will need to download the
software and compile them on your own machine.
You will need to replace the existing executables in the /Ext/linux or /Ext/mac directory.
The only external source code supplied is MstatX and OrthoMCL because files had to be changed for it to work.
Blast and Diamond
There are three options for the search programs, where the following are ordered according to precedence:
- You can define where the executables are in the HOSTS.cfg file
using the blast_path and diamond_path parameters, e.g.
blast_path = /Users/cari/Workspace/bin/blast
diamond_path = /Users/cari/Workspace/bin/diamond
- Use the default ones in /Ext.
- If you have Blast and/or Diamond in a bin that is accessed by your PATH environmental variable, and want to use them, just remove
the existing directory from /Ext/linux or /Ext/mac.
If you are going to use the runSingleTCW assembler,
you MUST specify the full path of where the Blast executables reside,
even if your going to use the default executables, e.g
blast_path = /Users/cari/Workspace/TCW_4/Ext/mac/blast
To verify what Diamond and Blast paths are being used, run
./runSingleTCW -v
|