1 |
FreeMOL Design Document (draft ideas subject to further refinement) |
2 |
|
3 |
Goal: |
4 |
|
5 |
Aggregate a managable set of open-source molecular software tools |
6 |
together into a maintainable form which can support integration with |
7 |
PyMOL and other interactive applications via quality-controlled |
8 |
platform-specific binary distributions. |
9 |
|
10 |
Structure: |
11 |
|
12 |
"src" top-level directory with distinct subdirectories containing |
13 |
configure scripts and source code for the various FreeMOL packages |
14 |
|
15 |
"freemol" top-level directory is a prototype framework for a freemol |
16 |
binary distribution that would contain executables and other |
17 |
required runtime files in a typical "unix-/usr-like" tree: |
18 |
(freemol/bin, freemol/lib, freemol/share, freemol/man, and so |
19 |
forth). The FREEMOL environment variable should be set to point at |
20 |
this directory. Please note that platform-specific binary |
21 |
executables should not be checked into subversion into this |
22 |
prototype directory tree. |
23 |
|
24 |
Compilation: |
25 |
|
26 |
Assuming the the FREEMOL environment variable has been defined, |
27 |
each package can be compiled and installed into $FREEMOL by cd'ing |
28 |
to its souce directory and issuing the following sequence of commands: |
29 |
|
30 |
./configure |
31 |
make |
32 |
make install |
33 |
|
34 |
Followed by a |
35 |
|
36 |
make clean |
37 |
|
38 |
to get rid of object code, intermediate files, etc. |
39 |
|
40 |
Deployment: |
41 |
|
42 |
A FreeMOL binary distribution would be a tar or zipped archive of |
43 |
the $FREEMOL folder containing executables compiled for a specific |
44 |
architecture. |
45 |
|
46 |
Installation will amount to extraction of the archive and setting |
47 |
of the FREEMOL environment variable to that PyMOL and other packages |
48 |
can subquently locate and rely upon the freemol executables. |
49 |
|
50 |
Pragmatic decisions: |
51 |
|
52 |
Rely upon unix-like shell-based compilation (MinGW/Cygwin on Win32) |
53 |
|
54 |
Stick with standalone, command-line only packages which have few if |
55 |
any dependencies |
56 |
|
57 |
Confirmed FreeMOL Packages: |
58 |
|
59 |
mengine |
60 |
mpeg_encode |
61 |
apbs |
62 |
pdb2pqr |
63 |
|
64 |
Proposed FreeMOL Packages |
65 |
|
66 |
python |
67 |
rdkit |
68 |
openbabel |