Skip to content

Commit 30c458a

Browse files
committed
Added a section about binary builds.
1 parent 390998d commit 30c458a

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

docs/binaries.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Binary building
2+
3+
For your conveninence, we have pre-build binaries of STRUCTURE and
4+
fastStructure. They are provided with the package under
5+
`structure_threader/bins/$platform/`.
6+
Here is how they were built.
7+
8+
## The build system
9+
10+
### GNU/Linux binaries
11+
Binaries were built on a machine with an Intel Xeon E5-2609 0 @ 2.40GHz CPU.
12+
The OS under which the binaries were built is Ubuntu 12.04 64bit. This "old"
13+
OS was used since linux systems have backwards, but not forwards compatibility.
14+
This means that binaries built on older systems will run on newer systems, but
15+
the opposite may not be true.
16+
17+
### OSX binaries
18+
We have not built any OSX binaries yet. We will update this section once we do.
19+
20+
21+
## STRUCTURE
22+
23+
STRUCTURE is relatively simple to build. Source code can be obtained from the
24+
[STRUCTURE website](http://pritchardlab.stanford.edu/structure_software/release_versions/v2.3.4/structure_kernel_source.tar.gz). To build the binary, we used our helper
25+
script "install_structure.sh".
26+
27+
28+
## fastStructure
29+
30+
fastStructure requires a more involved process to build as it requires many
31+
dependencies. It can be obtained from
32+
[it's own github repository](https://github.com/rajanil/fastStructure).
33+
Although fastStructure is written in python 2, it uses compiled code, by making
34+
use of `cython`.
35+
To build the binary, we have insatlled fastStructure using our helper script
36+
"install_faststructure.sh" and then we have used
37+
[pyinstaller](http://www.pyinstaller.org/) to turn it into a binary. The used
38+
"specfile" can be found [here](https://github.com/StuntsPT/Structure_threader/tree/master/helper_scripts/structure.spec) which contains all the required information to reproduce the
39+
build.

docs/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ To run "fastChooseK.py" (fastStructure wrapper only), numpy is also required.
1616

1717
## Contents
1818
* [Installation & dependencies](install.md)
19+
* [Binary building](binaries.md)
1920
* [Usage](usage.md)
2021
* [Output](output.md)
2122
* [Test Data](test_data.md)

0 commit comments

Comments
 (0)