http://msl-libraries.org/api.php?action=feedcontributions&user=Dwkulp&feedformat=atomMSL-Libraries - User contributions [en]2024-03-29T06:52:09ZUser contributionsMediaWiki 1.32.6http://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Downloading_MSL&diff=903Tutorial:Getting started: Downloading MSL2015-08-06T17:17:35Z<p>Dwkulp: </p>
<hr />
<div>'''MSL''' is open source software distributed under the terms of the GNU Lesser General Public.<br />
<br />
MSL is available from SourceForge, at [https://sourceforge.net/projects/mslib/ the project page] (stable releases) and at the [http://sourceforge.net/p/mslib/code/HEAD/tree/ SVN repository] (stable, betas, development version).<br />
<br />
===Download links===<br />
* '''v.1.1, stable release, created Apr 3, 2013, last update (v.1.1.0.9) Feb 11, 2014'''<br />
** Download a tar ball (.tgz file) from the SourceForge MSL web site '''[http://sourceforge.net/projects/mslib/files/v.1.1/mslib-1.0.0.9.tgz/download mslib-1.1.0.9.tgz]'''<br />
<br />
* '''v.1.0, old release (bug fixes back-ported), created Jul 8, 2012, last update (v.1.0.0.14) Feb 11, 2014'''<br />
** Download a tar ball (.tgz file) from the SourceForge MSL web site '''[http://sourceforge.net/projects/mslib/files/v.1.0/mslib-1.0.0.14.tgz/download mslib-1.0.0.14.tgz]'''<br />
<br />
* '''Development version (trunk)'''<br />
** Download a snapshot from the SourceForge SVN repository at '''[http://sourceforge.net/p/mslib/code/HEAD/tree/trunk/ http://sourceforge.net/p/mslib/code/HEAD/tree/trunk/]'''<br />
** ... or check out the trunk using Subversion (snv) with the following command (the command will create a subdirectory mslib/trunk)<br />
<source lang="text"><br />
svn checkout svn://svn.code.sf.net/p/mslib/code/trunk mslib/trunk<br />
</source><br />
<br />
To check out a specific version, you may want to first list all the tags via:<br />
<source lang="text"><br />
svn ls -v ^/tags<br />
</source><br />
<br />
Then checkout the revision number (e.g. 1765) via:<br />
<source lang="text"><br />
svn checkout -r 1765 svn://svn.code.sf.net/p/mslib/code/trunk mslib/trunk<br />
</source><br />
For compiling instructions refer to the [[Tutorial]] page.<br />
<br />
'''NOTE''': by default, MSL assumes that you have installed [http://www.gnu.org/software/gsl GSL]. We highly recommend that you install [http://www.gnu.org/software/gsl GSL] prior to MSL compilation.<br />
<br />
----<br />
<br />
===History===<br />
<br />
==== Version 1.1, released 3 April, 2013 ====<br />
'''New Features'''<br />
* Added IMM1 solvation model<br />
* Added a facility to temporarily hide identities (amini acid types) at positions that contain more than one identity<br />
* Initial implementation of clustering algorithms (SingleLinkage, Average-Linkage, Complete-Linkage and PAM/Kmedoids) in src/Clustering.h<br />
* Object for fitting a coiled coil to parameters, in src/CoiledCoilFitter.h<br />
<br />
'''Bug fixes'''<br />
* Fixed bug with linked position during on-the-fly energy computation<br />
* Fixed bugs in the implementation of SCWRL4 hydrogen bond<br />
<br />
==== Version 1.0,released 8 July, 2013 ====<br />
'''First release'''<br />
<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Main_Page&diff=873Main Page2013-09-22T21:43:34Z<p>Dwkulp: /* Reference */</p>
<hr />
<div>=MSL: an open source C++ library for analysis, manipulation, modeling and design of macromolecules.=<br />
<br />
[[Image:MSL-logo.png|right|400px]]<br />
<br />
===Philosophy===<br />
The main goal is to create a set of tools that enable the computational study of macromolecules with relative ease at all levels, from simple operations (for example, load a PDB and measure a distance or edit a dihedral) to complex applications (protein modeling or design).<br />
<br />
The MSL library is '''not''' a program (although some applications are distributed) but a tool for scientist to code their own methods.<br />
<br />
===Features===<br />
Some of the features supported by the library are:<br />
<br />
* Support for reading and writing PDB and CRD files.<br />
* The ability of storing and switching between multiple atom coordinates, for conformational changes and rotameric representation of side chain conformational freedom.<br />
* For protein design, the ability to build and store multiple residue identities (i.e. LEU, ILE, ALA) at a position and switch between them.<br />
* Support for rotamer libraries.<br />
* Transformations such as translations, rotations, and alignments.<br />
* The CHARMM force field and other energy funtions.<br />
* Support for CHARMM topology and parameter files.<br />
* Structure building from scratch (using internal coordinates)<br />
* Search algorithms such as Monte Carlo, Dead End Elimination, and Self Consistent Mean Field Monte Carlo.<br />
* Local backbone sampling.<br />
* Crystal lattice generation.<br />
* A '''[[PyMOL Python Interface]]''' for calling MSL code from within PyMOL.<br />
* A R Interface for calling arbitrary R algorithms or plotting routines from within MSL<br />
* And more...<br />
<br />
===Documentation===<br />
The '''[[Documentation]]''' – currently still under construction – provides a description of the '''[[MSL Objects|objects]]''' and of some '''[[MSL Programs|distrubuted programs and utilites]]'''. A step by step '''[[Tutorial|tutorial]]''' is being assembled.<br />
<br />
===Status===<br />
Current version: 1.1, released on April 3, 2013.<br />
<br />
Previous versions: 1.0, released on July 8, 2012.<br />
<br />
===Source===<br />
<br />
The source code can be downloaded on SourceForge. Go to the '''[[Tutorial:Getting_started:_Downloading_MSL|Download]]''' page. ([[ToDo|"To do" list]]).<br />
<br />
===Main development team:===<br />
<br />
* Alessandro Senes, Sabareesh Subraminiam, Ben Mueller, Dept. of Biochemistry, U. of Wisconsin-Madison, [http://senes.biochem.wisc.edu '''Senes Lab''']<br />
* Dan Kulp, IAVI, Scripps Research Institute, La Jolla CA<br />
* Jason Donald, Agrivida, Inc., Medford MA<br />
* Brett Hannigan, U. of Pennsylvania, Genomics and Computational Biology Graduate Group<br />
* Gevorg Grigoryan, James Zhang, Dept. of Computer Science, Dartmouth College, Hanover NH, [http://www.cs.dartmouth.edu/~gevorg/ '''Grigoryan Lab''']<br />
<br />
=== Reference === <br />
Article published using MSL should cite:<br />
<pubmed>22565567</pubmed><br />
<br />
'''MSL (including early versions) has been used in the following work:'''<br />
<pubmed>24003111 23520975 23422424 23089864 22576292 22178759 21482808 21287621 21321234 21287621 20945900 20080739 19722646</pubmed></div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Check_in_procedure&diff=872Tutorial:Check in procedure2013-09-22T21:36:36Z<p>Dwkulp: </p>
<hr />
<div>1) How to checkout, modify and checkin the latest version (trunk)<br />
<br />
cd mslib/trunk<br />
svn co svn://svn.code.sf.net/p/mslib/code/trunk .<br />
<br />
# Check the version that you have..<br />
head -n 40 src/release.h <br />
<br />
# modify some files<br />
<br />
# check in using MSLDIR/scripts/submit.py , current version is v1.0.1.7 . new version would be v1.0.X.Y ; X > 0<br />
<br />
2) How to checkout, modify and checkin the release , say v1.0<br />
<br />
cd mslib/branches/v1.0<br />
svn co https://svn.code.sf.net/p/mslib/code/branches/v.1.0 .<br />
<br />
# Check the version that you have<br />
head -n 40 src/release.h <br />
<br />
# modify some files<br />
<br />
# check in using MSLDIR/scripts/submit.py , current version is 1.0.0.1. new version would be v1.0.0.X</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Check_in_procedure&diff=871Tutorial:Check in procedure2013-09-22T21:31:46Z<p>Dwkulp: </p>
<hr />
<div>1) How to checkout, modify and checkin the latest version (trunk)<br />
<br />
cd mslib/trunk<br />
svn co https://mslib.svn.sourceforge.net/svnroot/mslib/trunk .<br />
<br />
# Check the version that you have..<br />
head -n 40 src/release.h <br />
<br />
# modify some files<br />
<br />
# check in using MSLDIR/scripts/submit.py , current version is v1.0.1.7 . new version would be v1.0.X.Y ; X > 0<br />
<br />
2) How to checkout, modify and checkin the release , say v1.0<br />
<br />
cd mslib/branches/v1.0<br />
svn co https://mslib.svn.sourceforge.net/svnroot/mslib/branches/v.1.0 .<br />
<br />
# Check the version that you have<br />
head -n 40 src/release.h <br />
<br />
# modify some files<br />
<br />
# check in using MSLDIR/scripts/submit.py , current version is 1.0.0.1. new version would be v1.0.0.X</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Check_in_procedure&diff=870Tutorial:Check in procedure2013-09-22T21:31:36Z<p>Dwkulp: Created page with "1) How to checkout, modify and checkin the latest version (trunk) cd mslib/trunk svn co https://mslib.svn.sourceforge.net/svnroot/mslib/trunk . # Check the version that ..."</p>
<hr />
<div>1) How to checkout, modify and checkin the latest version (trunk)<br />
<br />
cd mslib/trunk<br />
svn co https://mslib.svn.sourceforge.net/svnroot/mslib/trunk .<br />
<br />
# Check the version that you have..<br />
head -n 40 src/release.h <br />
<br />
# modify some files<br />
<br />
# check in using MSLDIR/scripts/submit.py , current version is v1.0.1.7 . new version would be v1.0.X.Y ; X > 0<br />
<br />
2) How to checkout, modify and checkin the release , say v1.0<br />
<br />
cd mslib/branches/v1.0<br />
svn co https://mslib.svn.sourceforge.net/svnroot/mslib/branches/v.1.0 .<br />
<br />
# Check the version that you have<br />
head -n 40 src/release.h <br />
<br />
# modify some files<br />
<br />
# check in using MSLDIR/scripts/submit.py , current version is 1.0.0.1. new version would be v1.0.0.X</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial&diff=869Tutorial2013-09-22T21:30:55Z<p>Dwkulp: </p>
<hr />
<div>=== NOTE: the tutorial is under construction ===<br />
<br />
The tutorial is a collection of articles that illustrate specific features of MSL. Each article explains example programs found in the [http://mslib.svn.sourceforge.net/viewvc/mslib/trunk/examples/ examples/] subdirectory. Previous knowledge of C++ is assumed.<br />
<br />
* '''Getting started'''<br />
** ''Getting MSL''<br />
*** [[Tutorial:Getting started: Downloading MSL|Getting started: Downloading MSL]]<br />
** ''Compiling''<br />
*** [[Tutorial:Getting started: Compiling MSL with external libraries|Getting started: Compiling MSL with external libraries]]<br />
*** [[Tutorial:Getting started: Compiling MSL|Getting started: Compiling MSL without external libraries]]<br />
*** [[Tutorial:Getting started: Compiling your own programs in MSL|Getting started: Compiling your own programs in MSL]]<br />
** ''Developers - Checking In''<br />
*** [[Tutorial:Check in procedure]]<br />
* '''Download topology/parameter files'''<br />
** [[Tutorial: Download CHARMM topology and parameter files]]<br />
* '''Molecular objects: atoms, residues, chains...'''<br />
** ''Read and write coordinates to/from files''<br />
*** [[Tutorial:Reading a PDB file with the simpler molecular object: the AtomContainer | Reading a PDB file with the simpler molecular object: the AtomContainer]] <br />
*** [[Tutorial:Reading a PDB file with the complex molecular object: the System | Reading a PDB file with the complex molecular object: the System]] <br />
** ''Interacting and manipulating molecular objects''<br />
*** [[Tutorial:Looping over Chains, Residues, Atoms in the System| Looping over Chains, Residues, Atoms in the System]]<br />
*** Getting Chains, Residues, Atoms by id<br />
<!-- *** [[Tutorial:Molecular Object Getters | Checking for existance of Atoms, Residues, Chains and getting them]] --><br />
*** [[Tutorial:Passing atoms between objects: the AtomPointerVector | Passing atoms between objects: the AtomPointerVector]]<br />
*** [[Tutorial:Selecting subsets of atoms|Selecting subsets of atoms]]<br />
*** [[Tutorial:Using regular expression: Selecting sequence motifs of a Chain|Using regular expression: Getting parts of a structure that match a sequence motif ]]<br />
<br />
* '''Molecular Modifications, Movements and Computing Geometries'''<br />
** [[Tutorial:Measuring distances, angles, dihedrals| Measuring distances, angles, dihedrals]]<br />
** Applying translations and rotations<br />
** Changing conformation<br />
** [[Tutorial:Molecular alignments| Molecular (Structural) Alignments]]<br />
** [[Tutorial::CoiledCoils_Bundles| Generating Coiled-coils and Symmetric Bundles]]<br />
** Generating Fusion Proteins<br />
** [[Tutorial::Mutating Residues|Mutating residues and adding additional conformations]]<br />
<br />
* '''Calculating Molecular Properties and Energies'''<br />
** Calculating Solvent Exposed Surface Area<br />
** Calculating CHARMM Energies<br />
** Using Statistical Potentials in MSL<br />
<br />
<br />
* '''Using MSL Supporting Classes'''<br />
** [[Tutorial:OptionParser|Parse command line options]]<br />
<br />
<br />
* '''Interfacing with PyMOL'''<br />
** Using the '''[[MSL Objects:PyMolVisualization|PyMolVisualization object]]''' to write out PyMOL script files<br />
** Using the '''[[MSL Objects:PythonMSL|PythonMSL object]]''' to call MSL from within PyMOL<br />
<br />
<br />
* '''Interfacing with R'''<br />
** Calling R from within MSL (including passing data back and forth)<br />
<br />
* '''Cartesian Minimization'''<br />
** Minimization of a simple System of atoms</div>Dwkulphttp://msl-libraries.org/index.php?title=Google_Summer_of_Code_Ideas&diff=788Google Summer of Code Ideas2013-03-27T18:06:48Z<p>Dwkulp: </p>
<hr />
<div>'''List of ideas for Google Summer of Code 2013'''<br />
<br />
1) Implementing a generic language-interface (swig.org)<br />
<br />
2) MSL-light<br />
<br />
3) Convert MSL pointers to using a Smart/Owning pointer system</div>Dwkulphttp://msl-libraries.org/index.php?title=Google_Summer_of_Code_Ideas&diff=787Google Summer of Code Ideas2013-03-27T18:06:41Z<p>Dwkulp: </p>
<hr />
<div>'''List of ideas for Google Summer of Code 2013'''<br />
<br />
1) Implementing a generic language-interface (swig.org)<br />
<br />
2) MSL-light<br />
<br />
3)Convert MSL pointers to using a Smart/Owning pointer system</div>Dwkulphttp://msl-libraries.org/index.php?title=Google_Summer_of_Code_Ideas&diff=786Google Summer of Code Ideas2013-03-27T18:06:15Z<p>Dwkulp: </p>
<hr />
<div>'''List of ideas for Google Summer of Code 2013'''<br />
<br />
1) Implementing a generic language-interface (swig.org)<br />
<br />
2) Convert MSL pointers to using a Smart/Owning pointer system</div>Dwkulphttp://msl-libraries.org/index.php?title=MSL_Programs&diff=742MSL Programs2011-11-28T18:39:19Z<p>Dwkulp: </p>
<hr />
<div>* [[MSL_Programs:getSelection|getSelection]]<br />
* [[MSL_Programs:getSurroundingResidues|getSurroundingResidues]]<br />
* [[MSL_Programs:getDihedrals|getDihedrals]] a program to get phi/psi and chi angles of a given structure. Can also give you probabilities and propensities for each angle.<br />
* [[MSL_Programs::repackSideChains|repackSideChains]] a program to repack sidechains<br />
* [[MSL_Programs::energyTable|energyTable]] a program to generate an energy table for repacking and/or designing sidechains<br />
* [[MSL_Programs::optimizeMC|optimizeMC]] a program to optimize an energy table (selects minimum energy side chains for repack/design runs)</div>Dwkulphttp://msl-libraries.org/index.php?title=MSL_Programs::repackSideChains&diff=736MSL Programs::repackSideChains2011-11-18T22:57:31Z<p>Dwkulp: </p>
<hr />
<div>==repackSideChains==<br />
<br />
A program to repack side chains of an input structure. <br />
<br />
<br />
==Options== <br />
--pdbfile FILE.pdb PDB structure to analyze<br />
<br />
<br />
== Details ==<br />
repacking will ...<br />
<br />
<br />
==Examples==<br />
<br />
> '''./repackSideChains --pdbfile 1A2J-for-repack-mini.pdb --rotlibfile rotlib-bonded_vdw_hb.txt --charmmtopfile top_all22_prot.inp --charmmparfile par_all22_prot.inp --hbondparfile canonical.inp --excludeenergyterm CHARMM_ELEC --printstats true --includecrystalrotamer true --ALA=-1 --GLY=-1 --PRO=-1 --outputpdbfile 1A2J_with_cr_except_elec'''<br />
<br />
....<br />
<br />
==Source from SourceForge==<br />
<br />
[http://mslib.svn.sourceforge.net/viewvc/mslib/trunk/programs/repackSideChains.h?&view=markup repackSideChains.h]<br />
<br />
[http://mslib.svn.sourceforge.net/viewvc/mslib/trunk/programs/repackSideChains.cpp?&view=markup repackSideChains.cpp]<br />
<br />
----<br />
<br />
[[Documentation|Documentation index]]</div>Dwkulphttp://msl-libraries.org/index.php?title=MSL_Programs::repackSideChains&diff=735MSL Programs::repackSideChains2011-11-18T16:22:07Z<p>Dwkulp: Created page with " ==repackSideChains== A program to repack side chains of an input structure. ==Options== --pdb FILE.pdb PDB structure to analyze == Details == repacking will ......"</p>
<hr />
<div><br />
==repackSideChains==<br />
<br />
A program to repack side chains of an input structure. <br />
<br />
==Options== <br />
--pdb FILE.pdb PDB structure to analyze<br />
<br />
<br />
== Details ==<br />
repacking will ...<br />
<br />
<br />
==Examples==<br />
<br />
> '''repackSideChains --pdb ~/Downloads/1MEL.pdb'''<br />
SOME OUTPUT HERE FOR 1MEL.pdb<br />
....<br />
<br />
==Source from SourceForge==<br />
<br />
[http://mslib.svn.sourceforge.net/viewvc/mslib/trunk/programs/repackSideChains.h?&view=markup repackSideChains.h]<br />
<br />
[http://mslib.svn.sourceforge.net/viewvc/mslib/trunk/programs/repackSideChains.cpp?&view=markup repackSideChains.cpp]<br />
<br />
----<br />
<br />
[[Documentation|Documentation index]]</div>Dwkulphttp://msl-libraries.org/index.php?title=MSL_Programs&diff=734MSL Programs2011-11-18T16:19:25Z<p>Dwkulp: </p>
<hr />
<div>* [[MSL_Programs:getSelection|getSelection]]<br />
* [[MSL_Programs:getSurroundingResidues|getSurroundingResidues]]<br />
* [[MSL_Programs:getDihedrals|getDihedrals]] a program to get phi/psi and chi angles of a given structure. Can also give you probabilities and propensities for each angle.<br />
* [[MSL_Programs::repackSideChains|repackSideChains]] a program to repack and/or design sidechains</div>Dwkulphttp://msl-libraries.org/index.php?title=Committing_code_to_MSL&diff=733Committing code to MSL2011-11-01T15:35:08Z<p>Dwkulp: </p>
<hr />
<div>==Automated checkin==<br />
In the MSL repository exists a "scripts" directory. Inside should be 3 files:<br />
''' submit.py miscUtils.py mslBuildTools.py''' . The primary driver of svn submission is '''submit.py'''<br />
<br />
<br />
* <font color="red">MUST SUBMIT FROM MSLDIR</font><br />
> cd $MSLDIR<br />
<br />
* To add new files, or to submit modified files, run:<br />
>python ./scripts/submit.py -f <list of files> -m <description of changes,additions><br />
<br />
Note, you can submit multiple files, each with different descriptions if you wish. For instance, you can run:<br />
<br />
>python ./scripts/submit.py -f file1.cpp -m "This is a message for file 1."<br />
>python ./scripts/submit.py -f file2.cpp file2.h file3.cpp file3.h Makefile -m "This is a message for files 2 and 3, plus the Makefile."<br />
<br />
When you run submit in this way, the files are not yet submitted. The script simply keeps track of the files that you intend to submit.<br />
<br />
* Once you are ready to submit all of your files, run:<br />
>python ./scripts/submit.py -now<br />
This will then pull a fresh tree, copy over the files you have indicated previously when running submit.py -f, and then build the tree. Provided the build<br />
completes successfully, the files will then be submitted to the repository. If the build fails, you'll see an error message. You can correct the error and then run submit.py -now again.<br />
<br />
Use multiple cores (8):<br />
>python ./scripts/submit.py -now 8</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=732Tutorial:Getting started: Compiling MSL with external libraries2011-10-31T21:42:32Z<p>Dwkulp: </p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export MSL_EXTERNAL_LIB_DIR=/usr/lib<br />
#export MSL_EXTERNAL_INCLUDE_DIR=/usr/include<br />
#export MSL_MACOS=T<br />
#export MSL_DEBUG=F<br />
#export MSL_DIR=$HOME/software/mslib<br />
<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv MSL_EXTERNAL_LIB_DIR /usr/lib<br />
#setenv MSL_EXTERNAL_INCLUDE_DIR /usr/include<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>./configure --prefix=/path/to/desired/directory<br />
>make<br />
>make check<br />
>make install<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
<br />
# Note the -H, this should follow the symlinks, otherwise you get copies of links with relative paths and then you get errors making MSL that say gsl/gsl_rng.h not found, when you see it there!<br />
> cp -r -H gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red">Success using shared libraries and compiling MSL as shared lib, but static lib has not been done yet. I will link my Makefile for shared-R compile once its cleaned up a bit</font><br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=731Tutorial:Getting started: Compiling MSL with external libraries2011-10-31T21:41:44Z<p>Dwkulp: </p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export MSL_EXTERNAL_LIB_DIR=/usr/lib<br />
#export MSL_EXTERNAL_INCLUDE_DIR=/usr/include<br />
#export MSL_MACOS=T<br />
#export MSL_DEBUG=F<br />
<br />
<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv MSL_EXTERNAL_LIB_DIR /usr/lib<br />
#setenv MSL_EXTERNAL_INCLUDE_DIR /usr/include<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>./configure --prefix=/path/to/desired/directory<br />
>make<br />
>make check<br />
>make install<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
<br />
# Note the -H, this should follow the symlinks, otherwise you get copies of links with relative paths and then you get errors making MSL that say gsl/gsl_rng.h not found, when you see it there!<br />
> cp -r -H gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red">Success using shared libraries and compiling MSL as shared lib, but static lib has not been done yet. I will link my Makefile for shared-R compile once its cleaned up a bit</font><br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=730Tutorial:Getting started: Compiling MSL with external libraries2011-10-31T21:35:39Z<p>Dwkulp: /* To compile GSL */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export MSL_EXTERNAL_LIB_DIR=/usr/lib<br />
#export MSL_EXTERNAL_INCLUDE_DIR=/usr/include<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv MSL_EXTERNAL_LIB_DIR /usr/lib<br />
#setenv MSL_EXTERNAL_INCLUDE_DIR /usr/include<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>./configure --prefix=/path/to/desired/directory<br />
>make<br />
>make check<br />
>make install<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
<br />
# Note the -H, this should follow the symlinks, otherwise you get copies of links with relative paths and then you get errors making MSL that say gsl/gsl_rng.h not found, when you see it there!<br />
> cp -r -H gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red">Success using shared libraries and compiling MSL as shared lib, but static lib has not been done yet. I will link my Makefile for shared-R compile once its cleaned up a bit</font><br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=729Tutorial:Getting started: Compiling MSL with external libraries2011-10-31T21:34:51Z<p>Dwkulp: /* To Compile BOOST */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export MSL_EXTERNAL_LIB_DIR=/usr/lib<br />
#export MSL_EXTERNAL_INCLUDE_DIR=/usr/include<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv MSL_EXTERNAL_LIB_DIR /usr/lib<br />
#setenv MSL_EXTERNAL_INCLUDE_DIR /usr/include<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
<br />
# Note the -H, this should follow the symlinks, otherwise you get copies of links with relative paths and then you get errors making MSL that say gsl/gsl_rng.h not found, when you see it there!<br />
> cp -r -H gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red">Success using shared libraries and compiling MSL as shared lib, but static lib has not been done yet. I will link my Makefile for shared-R compile once its cleaned up a bit</font><br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=728Tutorial:Getting started: Compiling MSL with external libraries2011-10-06T13:07:33Z<p>Dwkulp: /* LINUX OS */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export MSL_EXTERNAL_LIB_DIR=/usr/lib<br />
#export MSL_EXTERNAL_INCLUDE_DIR=/usr/include<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv MSL_EXTERNAL_LIB_DIR /usr/lib<br />
#setenv MSL_EXTERNAL_INCLUDE_DIR /usr/include<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
<br />
# Note the -H, this should follow the symlinks, otherwise you get copies of links with relative paths and then you get errors making MSL that say gsl/gsl_rng.h not found, when you see it there!<br />
> cp -r -H gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red">Success using shared libraries and compiling MSL as shared lib, but static lib has not been done yet. I will link my Makefile for shared-R compile once its cleaned up a bit</font><br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=727Tutorial:Getting started: Compiling MSL with external libraries2011-10-03T23:20:16Z<p>Dwkulp: /* To compile GSL */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export MSL_EXTERNAL_LIB_DIR=/usr/lib<br />
#export MSL_EXTERNAL_INCLUDE_DIR=/usr/include<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv MSL_EXTERNAL_LIB_DIR /usr/lib<br />
#setenv MSL_EXTERNAL_INCLUDE_DIR /usr/include<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
<br />
# Note the -H, this should follow the symlinks, otherwise you get copies of links with relative paths and then you get errors making MSL that say gsl/gsl_rng.h not found, when you see it there!<br />
> cp -r -H gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=726Tutorial:Getting started: Compiling MSL with external libraries2011-10-03T23:06:47Z<p>Dwkulp: /* How to enable inclusion of the external libraries */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export MSL_EXTERNAL_LIB_DIR=/usr/lib<br />
#export MSL_EXTERNAL_INCLUDE_DIR=/usr/include<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv MSL_EXTERNAL_LIB_DIR /usr/lib<br />
#setenv MSL_EXTERNAL_INCLUDE_DIR /usr/include<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
> cp -r gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=725Tutorial:Getting started: Compiling MSL with external libraries2011-09-29T22:15:59Z<p>Dwkulp: /* To Compile BOOST */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/ext_libs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/ext_libs<br />
> cp -r boost ~/software/mslib/ext_includes/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
> cp -r gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=724Tutorial:Getting started: Compiling MSL with external libraries2011-09-29T22:15:38Z<p>Dwkulp: /* To compile GSL */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/extlibs/<br />
> cp -r boost ~/software/mslib/extlibs/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/ext_libs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/ext_libs/<br />
> cp -r gsl ~/software/mslib/ext_includes/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=723Tutorial:Getting started: Compiling MSL with external libraries2011-09-29T22:15:16Z<p>Dwkulp: /* GLPK */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/extlibs/<br />
> cp -r boost ~/software/mslib/extlibs/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
> cp -r gsl ~/software/mslib/extlibs/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/ext_libs/<br />
cp /usr/include/glpk.h MSLHOME/ext_includes/<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=722Tutorial:Getting started: Compiling MSL with external libraries2011-09-29T22:13:19Z<p>Dwkulp: /* To Compile BOOST */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./b2<br />
> cp ./stage/lib/libboost_*.a ~/software/mslib/extlibs/<br />
> cp -r boost ~/software/mslib/extlibs/<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
> cp -r gsl ~/software/mslib/extlibs/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/extlibs/<br />
cp /usr/include/glpk.h MSLHOME/extlibs/<br />
<br />
<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=721Tutorial:Getting started: Compiling MSL with external libraries2011-09-29T22:07:50Z<p>Dwkulp: /* To compile GSL */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
> cp -r gsl ~/software/mslib/extlibs/<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/extlibs/<br />
cp /usr/include/glpk.h MSLHOME/extlibs/<br />
<br />
<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Main_Page&diff=720Main Page2011-09-29T21:49:01Z<p>Dwkulp: </p>
<hr />
<div><big>'''MSL: an open source C++ library for analysis, manipulation, modeling and design of macromolecules.'''<br />
</big><br />
[[Image:MSL-logo.png|right|400px]]<br />
<br />
<br />
===Philosophy===<br />
The main goal is to create a set of tools that enable the computational study of macromolecules with relative ease at all levels, from simple operations (for example, load a PDB and measure a distance or edit a dihedral) to complex applications (protein modeling or design).<br />
<br />
The MSL library is '''not''' a program (although some applications are distributed) but a tool for scientist to code their own methods.<br />
<br />
===Features===<br />
Some of the features supported by the library are:<br />
<br />
* Support for reading and writing PDB files.<br />
* The ability of storing and switching between multiple atom coordinates, for conformational changes and rotameric representation of side chain conformational freedom.<br />
* For protein design, the ability to build and store multiple residue identities (i.e. LEU, ILE, ALA) at a position and switch between them.<br />
* Transformations such as translations, rotations, and alignments.<br />
* The CHARMM force field and other potential energies.<br />
* Support for CHARMM topology and parameter files.<br />
* Structure building from scratch (using internal coordinates)<br />
* Search algorithms such as Monte Carlo, Dead End Elimination, and Self Consistent Mean Field Monte Carlo.<br />
* Local backbone sampling.<br />
* Crystal lattice generation.<br />
* A '''[[PyMOL Python Interface]]''' for calling MSL code from within PyMOL.<br />
* A R Interface for calling arbitrary R algorithms or plotting routines from within MSL<br />
* And more...<br />
<br />
===Documentation===<br />
The '''[[Documentation]]''' – currently still under construction – provides a description of the '''[[MSL Objects|objects]]''' and of some '''[[MSL Programs|distrubuted programs and utilites]]'''. A step by step '''[[Tutorial|tutorial]]''' is being assembled.<br />
<br />
===Status===<br />
The libraries are in an advanced alpha stage and in active development. They are suitable for production work (at your own risk, we use them for it daily), but the APIs are not set in stone so the occasional bug will surface and feature development will be ongoing.<br />
<br />
===Source===<br />
<br />
The source code can be downloaded on SourceForge. Go to the '''[[Tutorial:Getting_started:_Downloading_MSL|Download]]''' page. ([[ToDo|"To do" list]]).<br />
<br />
===Main development team:===<br />
<br />
* [http://senes.biochem.wisc.edu '''Senes Lab, U Wisconsin-Madison''']: Alessandro Senes (senes _AT_ wisc.edu), Sabareesh Subraminiam (subramaniam2 _AT_ wisc.edu)<br />
* [http://www.scripps.edu '''The Scripps Research Institute, La Jolla, Ca''']: Dan Kulp (dwkulp _AT_ scripps.edu)<br />
* [http://degrado.med.upenn.edu '''DeGrado Lab, U Pennsylvania''']: Brett Hannigan (brettth _AT_ mail.med.upenn.edu), Jason Donald (jdon _AT_ mail.med.upenn.edu)<br />
<br />
=== Reference === <br />
A primary manuscript is currently in preparation.<br />
<br />
'''MSL in the literature'''<br />
<pubmed>21482808</pubmed><br />
<pubmed>21321234</pubmed><br />
<pubmed>20080739</pubmed><br />
<pubmed>19722646</pubmed></div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=719Tutorial:Getting started: Compiling MSL with external libraries2011-06-30T17:20:35Z<p>Dwkulp: </p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
./configure --prefix=/usr/lib --disable-dl --disable-odbc --disable-mysql --enable-static --without-gmp --without-zlib<br />
make<br />
make install<br />
cp /usr/lib/libglpk.a MSLHOME/extlibs/<br />
cp /usr/include/glpk.h MSLHOME/extlibs/<br />
<br />
<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Committing_code_to_MSL&diff=717Committing code to MSL2011-04-20T18:11:09Z<p>Dwkulp: </p>
<hr />
<div>==Automated checkin==<br />
In the MSL repository exists a "scripts" directory. Inside should be 3 files:<br />
''' submit.py miscUtils.py mslBuildTools.py''' . The primary driver of svn submission is '''submit.py'''<br />
<br />
<br />
* <font color="red">MUST SUBMIT FROM MSLDIR</font><br />
> cd $MSLDIR<br />
<br />
* To add new files, or to submit modified files, run:<br />
>python ./scripts/submit.py -f <list of files> -m <description of changes,additions><br />
<br />
Note, you can submit multiple files, each with different descriptions if you wish. For instance, you can run:<br />
<br />
>python ./scripts/submit.py -f file1.cpp -m "This is a message for file 1."<br />
>python ./scripts/submit.py -f file2.cpp file2.h file3.cpp file3.h Makefile -m "This is a message for files 2 and 3, plus the Makefile."<br />
<br />
When you run submit in this way, the files are not yet submitted. The script simply keeps track of the files that you intend to submit.<br />
<br />
* Once you are ready to submit all of your files, run:<br />
>python ./scripts/submit.py -now<br />
This will then pull a fresh tree, copy over the files you have indicated previously when running submit.py -f, and then build the tree. Provided the build<br />
completes successfully, the files will then be submitted to the repository. If the build fails, you'll see an error message. You can correct the error and then run submit.py -now again.</div>Dwkulphttp://msl-libraries.org/index.php?title=Committing_code_to_MSL&diff=716Committing code to MSL2011-04-20T18:04:57Z<p>Dwkulp: </p>
<hr />
<div>==Automated checkin==<br />
In the MSL repository exists a "scripts" directory. Inside should be 3 files:<br />
''' submit.py miscUtils.py mslBuildTools.py''' . The primary driver of svn submission is '''submit.py'''<br />
<br />
<font color="red">MUST SUBMIT FROM MSLDIR</font><br />
<br />
* To add new files, or to submit modified files, run:<br />
>python ./scripts/submit.py -f <list of files> -m <description of changes,additions><br />
<br />
Note, you can submit multiple files, each with different descriptions if you wish. For instance, you can run:<br />
<br />
>python ./scripts/submit.py -f file1.cpp -m "This is a message for file 1."<br />
>python ./scripts/submit.py -f file2.cpp file2.h file3.cpp file3.h Makefile -m "This is a message for files 2 and 3, plus the Makefile."<br />
<br />
When you run submit in this way, the files are not yet submitted. The script simply keeps track of the files that you intend to submit.<br />
<br />
* Once you are ready to submit all of your files, run:<br />
>python ./scripts/submit.py -now<br />
This will then pull a fresh tree, copy over the files you have indicated previously when running submit.py -f, and then build the tree. Provided the build<br />
completes successfully, the files will then be submitted to the repository. If the build fails, you'll see an error message. You can correct the error and then run submit.py -now again.</div>Dwkulphttp://msl-libraries.org/index.php?title=Committing_code_to_MSL&diff=712Committing code to MSL2011-04-20T16:15:55Z<p>Dwkulp: </p>
<hr />
<div>==Automated checkin==<br />
In the MSL repository exists a "scripts" directory. Inside should be 3 files:<br />
''' submit.py miscUtils.py mslBuildTools.py''' . The primary driver of svn submission is '''submit.py'''<br />
<br />
<br />
* Add modified and new files:<br />
>python ./submit.py -f <list of files> -m <description of changes,additions><br />
<br />
* Test changes with what is in trunk, then submit<br />
>python ./submit.py -now</div>Dwkulphttp://msl-libraries.org/index.php?title=Committing_code_to_MSL&diff=711Committing code to MSL2011-04-20T16:11:12Z<p>Dwkulp: Created page with "==Automated checkin== In the MSL repository exists a "scripts" directory. Inside should be 3 files: ''' submit.py miscUtils.py mslBuildTools.py''' . The primary driver of svn su..."</p>
<hr />
<div>==Automated checkin==<br />
In the MSL repository exists a "scripts" directory. Inside should be 3 files:<br />
''' submit.py miscUtils.py mslBuildTools.py''' . The primary driver of svn submission is '''submit.py'''<br />
<br />
<br />
* Add modified and new files:<br />
'''submit.py''' will ask for modified and new files</div>Dwkulphttp://msl-libraries.org/index.php?title=Documentation&diff=710Documentation2011-04-20T16:01:44Z<p>Dwkulp: </p>
<hr />
<div>==MSL Documentation==<br />
<br />
=== Getting started ===<br />
An introduction for first users and some simple programs that illustrate how to use different features of the library are provided in the '''[[Tutorial]]'''.<br />
<br />
=== MSL Objects ===<br />
A description of the objects and link to the source code on SourceForge is provided in the '''[[MSL Objects]]''' section<br />
<br />
===Distributed Programs===<br />
A number of programs and utilities are distributed with MSL. Check the '''[[MSL Programs]]''' section.<br />
<br />
=== MSL by example ===<br />
A number of example on how to do simple or complex tasks: '''[[MSL by example]]'''<br />
<br />
=== Developers of MSL ===<br />
'''[[Committing code to MSL]]'''</div>Dwkulphttp://msl-libraries.org/index.php?title=Documentation&diff=709Documentation2011-04-20T16:01:26Z<p>Dwkulp: </p>
<hr />
<div>==MSL Documentation==<br />
<br />
=== Getting started ===<br />
An introduction for first users and some simple programs that illustrate how to use different features of the library are provided in the '''[[Tutorial]]'''.<br />
<br />
=== MSL Objects ===<br />
A description of the objects and link to the source code on SourceForge is provided in the '''[[MSL Objects]]''' section<br />
<br />
===Distributed Programs===<br />
A number of programs and utilities are distributed with MSL. Check the '''[[MSL Programs]]''' section.<br />
<br />
=== MSL by example ===<br />
A number of example on how to do simple or complex tasks: '''[[MSL by example]]'''<br />
<br />
== Developers of MSL ==<br />
'''[[Committing code to MSL]]'''</div>Dwkulphttp://msl-libraries.org/index.php?title=Main_Page&diff=708Main Page2011-04-19T20:10:11Z<p>Dwkulp: </p>
<hr />
<div><big>'''MSL: an open source C++ library for analysis, manipulation, modeling and design of macromolecules.'''<br />
</big><br />
[[Image:MSL-logo.png|right|400px]]<br />
<br />
<br />
===Philosophy===<br />
The main goal is to create a set of tools that enable the computational study of macromolecules with relative ease at all levels, from simple operations (for example, load a PDB and measure a distance or edit a dihedral) to complex applications (protein modeling or design).<br />
<br />
The MSL library is '''not''' a program (although some applications are distributed) but a tool for scientist to code their own methods.<br />
<br />
===Features===<br />
Some of the features supported by the library are:<br />
<br />
* Support for reading and writing PDB files.<br />
* The ability of storing and switching between multiple atom coordinates, for conformational changes and rotameric representation of side chain conformational freedom.<br />
* For protein design, the ability to build and store multiple residue identities (i.e. LEU, ILE, ALA) at a position and switch between them.<br />
* Transformations such as translations, rotations, and alignments.<br />
* The CHARMM force field and other potential energies.<br />
* Support for CHARMM topology and parameter files.<br />
* Structure building from scratch (using internal coordinates)<br />
* Search algorithms such as Monte Carlo, Dead End Elimination, and Self Consistent Mean Field Monte Carlo.<br />
* Local backbone sampling.<br />
* Crystal lattice generation.<br />
* A '''[[PyMOL Python Interface]]''' for calling MSL code from within PyMOL.<br />
* A R Interface for calling arbitrary R algorithms or plotting routines from within MSL<br />
* And more...<br />
<br />
===Documentation===<br />
The '''[[Documentation]]''' – currently still under construction – provides a description of the '''[[MSL Objects|objects]]''' and of some '''[[MSL Programs|distrubuted programs and utilites]]'''. A step by step '''[[Tutorial|tutorial]]''' is being assembled.<br />
<br />
===Status===<br />
The libraries are in an advanced alpha stage and in active development. They are suitable for production work (at your own risk, we use them for it daily), but the APIs are not set in stone so the occasional bug will surface and feature development will be ongoing.<br />
<br />
===Source===<br />
<br />
The source code can be downloaded on SourceForge. Go to the '''[[Tutorial:Getting_started:_Downloading_MSL|Download]]''' page. ([[ToDo|"To do" list]]).<br />
<br />
===Main development team:===<br />
<br />
* [http://senes.biochem.wisc.edu '''Senes Lab, U Wisconsin-Madison''']: Alessandro Senes (senes _AT_ wisc.edu), Sabareesh Subraminiam (subramaniam2 _AT_ wisc.edu)<br />
* [http://www.lanl.gov/bioscience/ '''Biosciences Division, Los Alamos National Lab''']: Dan Kulp (dwkulp _AT_ lanl.gov)<br />
* [http://degrado.med.upenn.edu '''DeGrado Lab, U Pennsylvania''']: Brett Hannigan (brettth _AT_ mail.med.upenn.edu), Jason Donald (jdon _AT_ mail.med.upenn.edu)<br />
<br />
=== Reference === <br />
A primary manuscript is currently in preparation.<br />
<br />
'''MSL in the literature'''<br />
<pubmed>21482808</pubmed><br />
<pubmed>21321234</pubmed><br />
<pubmed>20080739</pubmed><br />
<pubmed>19722646</pubmed></div>Dwkulphttp://msl-libraries.org/index.php?title=Tests&diff=707Tests2011-03-08T19:56:13Z<p>Dwkulp: Created page with "Testing page Unit tests * Scientific Benchmarks * Sequence recovery for monomeric proteins * Rotamer recovery for monomeric proteins * Sequence recovery for protein complexes ..."</p>
<hr />
<div>Testing page<br />
<br />
Unit tests<br />
*<br />
<br />
Scientific Benchmarks<br />
* Sequence recovery for monomeric proteins<br />
* Rotamer recovery for monomeric proteins<br />
* Sequence recovery for protein complexes<br />
* Rotamer recovery for protein complexes</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial::Mutating_Residues&diff=704Tutorial::Mutating Residues2010-08-31T04:02:28Z<p>Dwkulp: /* Program description */</p>
<hr />
<div><br />
This is an example on how to make mutations and add conformations (rotamers) in MSL. There are multiple ways to do this in MSL, here we describe the simplest way (only needing a rotamer library). This tutorial explains functions in the '''[[MSL Objects:PDBTopology|PDBTopology]]''' and others.<br />
<br />
<br />
[http://mslib.svn.sourceforge.net/viewvc/mslib/trunk/examples/example_mutation_rotamers.cpp?view=markup Complete source of example_mutation_rotamers.cpp]<br />
<br />
<br />
<br />
[[Image:rotamers.png|500px|center|thumb|Mutation and rotamers built by this example]]<br />
<br />
<br />
<br />
=== To compile ===<br />
<source lang="text"><br />
% make bin/example_mutation_rotamers<br />
</source><br />
<br />
=== To run the program ===<br />
Go to the main directory and run the command ('''note''', the location of the exampleFiles subdirectory needs to be provided as an argument)<br />
<source lang="text"><br />
% bin/example_mutation_rotamers exampleFiles library/rotlib/balanced/rotlib-balanced-200.txt<br />
</source><br />
<br />
=== Program description ===<br />
<br />
<br />
<source lang="cpp"><br />
// Read pdb file into a System object<br />
System sys;<br />
sys.readPdb(pdbFile);<br />
<br />
// Get one of the residues : chain B position 1<br />
Residue &res = sys.getIdentity("B,1");<br />
<br />
// Create a PDBTopology object<br />
PDBTopology pdbTop;<br />
<br />
// Set a rotamer library and use atoms defined in the rotamer library to build<br />
pdbTop.readRotamerLibrary((string)argv[2]);<br />
pdbTop.setAddAtomsFromRotLib(true);<br />
<br />
// Get backbone atoms <br />
AtomPointerVector backboneAtoms = pdbTop.getBackboneAtoms(res);<br />
<br />
// ********* MUTATE *************** //<br />
// B,1,ASP to B,1,ASN and get 3 ASN rotamers<br />
AtomContainer newAtoms = pdbTop.getResidue("B,1,ASN",backboneAtoms,3);<br />
<br />
// Add atoms to the system<br />
sys.getPosition("B,1").addIdentity(newAtoms.getAtomPointers(),"ASN");<br />
sys.getPosition("B,1").setActiveIdentity("ASN");<br />
<br />
// Write out new pdb with an Asn at position 1, chain B. instead of Asp.<br />
sys.writePdb("/tmp/example00005_withAsn.pdb");<br />
cout << "Wrote file /tmp/example00005_withAsn.pdb , has Asn instead of Asp\n";<br />
<br />
// Change conformation , First conformation is 2. Write out conformation 0 and 1.<br />
sys.getResidue("B,1,ASN").setActiveConformation(0);<br />
sys.writePdb("/tmp/example00005_withAsn_rotamer0.pdb");<br />
cout << "Wrote file /tmp/example00005_withAsn_rotamer0.pdb , has Asn (alternate rotamer) instead of Asp\n";<br />
<br />
sys.getResidue("B,1,ASN").setActiveConformation(1);<br />
sys.writePdb("/tmp/example00005_withAsn_rotamer1.pdb");<br />
cout << "Wrote file /tmp/example00005_withAsn_rotamer1.pdb , has Asn (alternate rotamer) instead of Asp\n";<br />
</source><br />
<br />
<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=703Tutorial:Getting started: Compiling MSL with external libraries2010-08-30T18:29:21Z<p>Dwkulp: /* MAC OS */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
If the above install does not work, one can install from source here is a good resource:<br />
http://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Quick-start<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=702Tutorial:Getting started: Compiling MSL with external libraries2010-08-25T23:23:49Z<p>Dwkulp: /* LINUX OS */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
===== LINUX OS =====<br />
<font color="red"> Currently no success in installing these packages on a linux machine, in theory something like the below commands should work</font><br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=701Tutorial:Getting started: Compiling MSL with external libraries2010-08-25T20:37:37Z<p>Dwkulp: /* LINUX OS */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
===== LINUX OS =====<br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=700Tutorial:Getting started: Compiling MSL with external libraries2010-08-25T20:36:54Z<p>Dwkulp: /* LINUX OS */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
===== LINUX OS =====<br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
sudo make install<br />
<br />
<br />
Install Rcpp:<br />
sudo /usr/local/bin/R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=699Tutorial:Getting started: Compiling MSL with external libraries2010-08-25T20:30:59Z<p>Dwkulp: /* LINUX OS */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
===== LINUX OS =====<br />
<br />
First try using the 'apt' system in linux:<br />
sudo apt-get install r-base<br />
<br />
If the 'apt' version is not the latest version that you need, then install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
make install<br />
<br />
<br />
Install Rcpp:<br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=698Tutorial:Getting started: Compiling MSL with external libraries2010-08-25T20:29:48Z<p>Dwkulp: /* To Compile R */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
===== LINUX OS =====<br />
<br />
Install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
make install<br />
<br />
<br />
Install Rcpp:<br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
Install RInside:<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=697Tutorial:Getting started: Compiling MSL with external libraries2010-08-25T20:29:26Z<p>Dwkulp: /* LINUX OS */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
===== LINUX OS =====<br />
<br />
Install latest version of R:<br />
sudo apt-get build-dep r-base<br />
tar xvzf R-2.11.1.tar.gz<br />
cd R-2.11.1<br />
./configure<br />
make<br />
make install<br />
<br />
<br />
Install Rcpp:<br />
<br />
Install RInside:<br />
<br />
<br />
<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=696Tutorial:Getting started: Compiling MSL with external libraries2010-08-25T20:25:45Z<p>Dwkulp: </p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
<br />
===== MAC OS =====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
<br />
===== LINUX OS =====<br />
sudo apt-get build-dep r-base<br />
./configure<br />
make<br />
make install<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=695Tutorial:Getting started: Compiling MSL with external libraries2010-08-20T03:27:37Z<p>Dwkulp: /* To Compile R */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
Install R and copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=694Tutorial:Getting started: Compiling MSL with external libraries2010-08-20T03:27:21Z<p>Dwkulp: /* To Compile R */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
Install R<br />
Copy headers into MSL_EXTERNAL_INCLUDE_DIR<br />
cp -r /Library/Frameworks/R.framework/Resources/include/ $MSL_EXTERNAL_INCLUDE_DIR<br />
<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=693Tutorial:Getting started: Compiling MSL with external libraries2010-08-20T03:17:21Z<p>Dwkulp: /* R */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
==== To Compile R ====<br />
Download Rcpp <br />
R CMD INSTALL Rcpp_0.8.5.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/Rcpp/lib/x86_64/libRcpp.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/Rcpp/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
R CMD INSTALL RInside_0.2.3.tar.gz<br />
cp /Library/Frameworks/R.framework/Resources/library/RInside/lib/x86_64/libRInside.a $MSL_EXTERNAL_LIB_DIR/<br />
cp -r /Library/Frameworks/R.framework/Resources/library/RInside/include $MSL_EXTERNAL_INCLUDE_DIR/<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=692Tutorial:Getting started: Compiling MSL with external libraries2010-07-23T03:18:58Z<p>Dwkulp: /* BOOST */</p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
====To Compile BOOST====<br />
>tar xzvf boost-VERSION.tar.gz<br />
>cd boost-VERSION<br />
>./bootstrap.sh --prefix=~/software/mslib/extlibs<br />
>./bjam install<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulphttp://msl-libraries.org/index.php?title=Tutorial:Getting_started:_Compiling_MSL_with_external_libraries&diff=691Tutorial:Getting started: Compiling MSL with external libraries2010-07-23T03:17:51Z<p>Dwkulp: </p>
<hr />
<div>Certain functions of MSL require the installation of some open-source external libraries.<br />
<br />
* '''BOOST''' (portable C++ source libraries) [[http://www.boost.org]] <br />
* '''GSL''' (GNU Scientific Library) [[http://www.gnu.org/software/gsl/]]<br />
* '''GLPK''' (GNU linear programming kit) [[http://www.gnu.org/software/glpk/]]<br />
* '''R''' (R statistical and graphics project) [[http://www.r-project.org/]]<br />
<br />
<br />
<br />
=== How to enable inclusion of the external libraries===<br />
<br />
By default MSL will be compiled '''without''' the support of the external libraries and some functionality won't be available. To include the libraries, you need to set some environmental variables. <br />
<br />
If you use '''bash''', add the following lines to your .bashrc<br />
<br />
<source lang="bash"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
export MSL_GSL=T<br />
export MSL_GLPK=T<br />
export MSL_BOOST=T<br />
export MSL_R=T<br />
#export EXTERNAL_LIB_DIR=/usr/lib<br />
</source><br />
<br />
If you use '''tcsh''', add the following lines to your .cshrc<br />
<source lang="text"><br />
# $MSL_GSL set to "T" if GSL is installed or else to "F" (default)<br />
# $MSL_BOOST set to "T" if BOOST is installed or else to "F" (default)<br />
# $MSL_GLPK set to "T" if GLPK is installed or else to "F" (default)<br />
# $MSL_R set to "T" if R is installed or else to "F" (default)<br />
setenv MSL_GSL T<br />
setenv MSL_GLPK T<br />
setenv MSL_BOOST T<br />
setenv MSL_R T<br />
#setenv EXTERNAL_LIB_DIR /usr/lib<br />
</source><br />
<br />
The default location of the libraries is '''/usr/lib'''. If you have installed them in a custom location set the $EXTERNAL_LIB_DIR environmental variable to the correct location.<br />
<br />
=== BOOST ===<br />
The following libraries from the [http://www.boost.org/ Boost C++ Libraries] are used in some MSL objects and programs<br />
* Serialization, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:EnvironmentDescriptor|EnvironmentDescriptor]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Archive, used for ... in the following objects<br />
** [[MSL_Objects:Atom|Atom]]<br />
** [[MSL_Objects:AtomPointerVector|AtomPointerVector]]<br />
** [[MSL_Objects:CartesianPoint|CartesianPoint]]<br />
** [[MSL_Objects:EnvironmentDatabase|EnvironmentDatabase]]<br />
** [[MSL_Objects:Frame|Frame]]<br />
** [[MSL_Objects:IcEntry|IcEntry]]<br />
** [[MSL_Objects:InterfaceResidueDescriptor|InterfaceResidueDescriptor]]<br />
** [[MSL_Objects:Line|Line]]<br />
** [[MSL_Objects:Matrix|Matrix]]<br />
** [[MSL_Objects:MoleculeInterfaceDatabase|MoleculeInterfaceDatabase]]<br />
** [[MSL_Objects:PrincipleComponentAnalysis|PrincipleComponentAnalysis]]<br />
** [[MSL_Objects:Selectable|Selectable]]<br />
** [[MSL_Objects:SphericalPoint|SphericalPoint]]<br />
<br />
* Regex, used for ... in the following objects<br />
** [[MSL_Objects:MslTools|MslTools]]<br />
** [[MSL_Objects:RegEx|RegEx]]<br />
<br />
* Random, used for ... in the following objects<br />
** [[MSL_Objects:RandomSeqGenerator|RandomSeqGenerator]]<br />
<br />
Note: if boost is included, version 1.40 (???) or later is required.<br />
<br />
If '''BOOST''' is enabled, you should see ''-D__BOOST__ -DBOOST_DISABLE_THREADS'' in the compilation command when using make.<br />
<br />
=== GSL ===<br />
The [[http://www.gnu.org/software/gsl/ GNU Scientific library]] is required by the following objects:<br />
* [[MSL_Objects:RandomNumberGenerator | RandomNumberGenerator]]<br />
* [[MSL_Objects:GSLMinimizer | GSLMinimizer]]<br />
* [[MSL_Objects:MonteCarloOptimization| MonteCarloOptimization]]<br />
* [[MSL_Objects:CCD | CCD]]<br />
* [[MSL_Objects:BackRub | BackRub]]<br />
* [[MSL_Objects:Quench | Quench]]<br />
* [[MSL_Objects:SurfaceAreaAndVolume | SurfaceAreaAndVolume]]<br />
<br />
If '''GSL''' is enabled, you should see ''-D__GSL_'' in the compilation command when using make.<br />
<br />
<br />
====To compile GSL====<br />
<br />
>tar xzvf gsl-1.14.tar.gz <br />
>cd gsl-1.14<br />
>make<br />
>cp .libs/libgsl.a ~/software/mslib/extlibs/<br />
>cp cblas/.libs/libgslcblas.a ~/software/mslib/extlibs/<br />
<br />
<br />
=== GLPK ===<br />
The [http://www.gnu.org/software/glpk/ GNU linear programming kit] is required by the [[MSL_Objects:LinearProgrammingOptimization | LinearProgrammingOptimization]] object.<br />
<br />
If '''GLPK''' is enabled, you should see ''-D__GLPK__'' in the compilation command when using make.<br />
<br />
=== R ===<br />
The [http://www.r-project.org/ R project] is used by the getDihedrals program.<br />
<br />
If '''R''' is enabled, you should see ''-D__R__'' in the compilation command when using make.<br />
<br />
----<br />
'''[[Tutorial|Back to the tutorial page]]'''<br />
<br />
[[Category:Tutorial]]</div>Dwkulp