Arachne code package
From ArachneWiki
The Arachne code package is the complete set of source code and ancillary files that comprises the Arachne program. Its root directory is equivalent to ARACHNE_DIR and is named Arachne by default. For information on downloading, installing, and compiling the Arachne code package, see Setup.
Some of Arachne's source code is contained in ARACHNE_DIR, but much of it is in subdirectories. If you are looking for a module's source code, be sure to search in all subdirectories of the package. Here are some particularly important subdirectories:
- bin: Contains all executable modules, once Arachne is compiled. Might be differently named; see ARACHNE_BIN_DIR.
- assemble: Contains Assemble and Assemblez.
- reporting: Contains many output modules.
- xerces_include: Contains the Xerces XML-parsing software.
Features
- Transparent compilation. Any executable module can be compiled simply by typing make <module-name> in ARACHNE_DIR. The compilation will be in the appropriate machine architecture, and the compiled binary will be put in ARACHNE_BIN_DIR.
- Easy searching. The CvsGrep module allows you to search all of the source code.
- Automatic tracebacks: Whenever a module fails, you should see something like this:
At Fri Feb 01 05:53:56 2008,
Assert index[u] >= 0 failed,
in void ReadsToPathsMainPartX(longlong, int, const vec<std::pair<int, int> >&, const unsigned int&, const vecbasevector&, vecbasevector&, vecbitvector&, vecbitvector&, std::map<long int, long int, std::less<long int>, std::allocator<std::pair<const long int, long int> > >&, longlong, Bool, int, vecKmerPath&) [with POS = short int], line 422 of file ./paths/ReadsToPathsCoreX.cc.
Dump of stack:
[raw stack entries = 0x8889c6 0x889330 0x88a8e1
0x5516fc 0x445b00 0x446263
0x4463db 0x404d0c 0x2a95affaaa
0x40491a]
0. void ReadsToPathsMainPartX<short>( ... ), in ReadsToPathsCoreX.cc:422
1. ReadsToPathsCoreX( ... ), in ReadsToPathsCoreX.cc:247
2. ReadsToPathsCoreY( ... ), in ReadsToPathsCoreX.cc:448
3. ReadsToPathsCoreY( ... ), in ReadsToPathsCoreX.cc:515
4. main, in TestEvil.cc:32
- Extendability: It is easy to write your own modules.
Historical statistics
The Arachne code package has grown prodigiously since it was first begun in 2000. Here is a chart of that growth:
| Version | Date | Number of... | |||
|---|---|---|---|---|---|
| Executables | Source files | Lines of code | Bytes of code | ||
| 1.0 | 2002-02-13 | 96 | 772 | 180k | 6.5M |
| 2.0.1 | 2003-03-11 | 96 | 765 | 194k | 7.1M |
| 2.1.0 | 2007-10-22 | 779 | 2120 | 428k | 15M |
| 3.1 | 2008-01-03 | 1129 | 2644 | 576k | 18M |
