docs update

This commit is contained in:
Greg Landrum
2013-07-05 04:55:38 +02:00
parent 3327b2ecc9
commit 1ac48b6242
6 changed files with 16 additions and 413 deletions

View File

@@ -799,7 +799,7 @@ or more molecules:
>>> mol3 = Chem.MolFromSmiles("c1(C=O)cc(OC)c(O)cc1")
>>> mols = [mol1,mol2,mol3]
>>> MCS.FindMCS(mols)
MCSResult(numAtoms=10, numBonds=10, smarts='[#6]-[#6]:1:[#6]:[#6](:[#6](:[#6]:[#6]:1)-[#8])-[#8]-[#6]', completed=1)
MCSResult(numAtoms=10, numBonds=10, smarts='[#6]:1(:[#6]:[#6](:[#6](:[#6]:[#6]:1)-[#8])-[#8]-[#6])-[#6]', completed=1)
It returns an MCSResult instance with information about the number of
atoms and bonds in the MCS, the SMARTS string which matches the
@@ -865,7 +865,7 @@ requirement and also sets ringMatchesRingOnly to True.
>>> MCS.FindMCS(mols)
MCSResult(numAtoms=6, numBonds=6, smarts='[#6]-1-[#6]-[#6](-[#6])-[#6]-1-[#6]', completed=1)
>>> MCS.FindMCS(mols, ringMatchesRingOnly=True)
MCSResult(numAtoms=5, numBonds=5, smarts='[#6]-@1-@[#6]-@[#6]-@[#6]-@1-@[#6]', completed=1)
MCSResult(numAtoms=5, numBonds=5, smarts='[#6]-@1-@[#6]-@[#6](-@[#6])-@[#6]-@1', completed=1)
>>> MCS.FindMCS(mols, completeRingsOnly=True)
MCSResult(numAtoms=4, numBonds=4, smarts='[#6]-@1-@[#6]-@[#6]-@[#6]-@1', completed=1)

View File

@@ -26,18 +26,18 @@ What is it?
Documentation, links
- Github (https://github.com/rdkit)
Bug tracker, git repository
- Sourceforge (http://sourceforge.net/projects/rdkit)
Mailing lists, Downloads, SVN repository
Mailing lists, Downloads, SVN repository (not always up-to-date)
- Google code (http://code.google.com/p/rdkit/)
Downloads, wiki
- Github (https://github.com/rdkit)
Bug tracker, git repository
- Mailing lists at https://sourceforge.net/p/rdkit/mailman/, searchable archives available for
`rdkit-discuss <http://www.mail-archive.com/rdkit-discuss@lists.sourceforge.net/>`_ and
`rdkit-devel <http://www.mail-archive.com/rdkit-devel@lists.sourceforge.net/>`_

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

402
INSTALL
View File

@@ -1,403 +1,7 @@
The most recent version of the build instructions can always be found
linked from the RDKit wiki:
http://code.google.com/p/rdkit/wiki/GettingStarted
The instructions below are for the Q2 2011 release and subsequent releases.
= Building on Linux or the Mac =
== Getting Ready ==
* Required packages:
* cmake. You need at least version 2.6. http://www.cmake.org if
your linux distribution doesn't have an appropriate
package. _Update: It seems that v2.8 is a better bet than
v2.6. It might be worth compiling your own copy of v2.8 even if
v2.6 is already installed._
* The following are required if you are planning on using the Python wrappers:
* The python headers. This probably means that you need to
install the python-dev package (or whatever it's called) for
your linux distribution.
* sqlite3. You also need the shared libraries. This may require
that you install a sqlite3-dev package.
* You need to have numpy (http://www.scipy.org/NumPy) installed.
* Optional packages
* If you would like to install the RDKit InChI support (first
available in the Q2 2011 release), follow the instructions in
$RDBASE/External/INCHI-API to get a copy of the InChI source and
put it in the appropriate place.
== Installing Boost ==
* *NOTE*: if your linux distribution has a boost-devel package
including the python and regex libraries, you can use that and
save yourself the steps below. _Update: if you *do* have a
version of the boost libraries pre-installed and you want to use
your own version, be careful when you build the code. We've seen
at least one example on a Fedora system where cmake compiled
using a user-installed version of boost and then linked against
the system version. This led to segmentation faults. There is a
workaround for this below in the
[#Frequently_Encountered_Problems Frequently Encountered
Problems] section._
* download the boost source distribution from [http://www.boost.org
the boost web site]
* extract the source somewhere on your machine
(e.g. `/usr/local/src/boost_1_45_0`)
* build the required boost libraries:
* `cd $BOOST`
* If you want to use the python wrappers: `./bootstrap.sh --with-libraries=python,regex`
* If not using the python wrappers: `./bootstrap.sh --with-libraries=regex`
* Building on 32 bit systems: `./bjam install`
* Building on 64 bit systems: `./bjam address-model=64 cflags=-fPIC cxxflags=-fPIC install`
If you have any problems with this step, check the boost
[http://www.boost.org/more/getting_started/unix-variants.html
installation instructions].
== Building the Code ==
* follow the Installing Boost instructions above.
* environment variables:
* RDBASE: the root directory of the RDKit distribution (e.g. ~/RDKit)
* *Linux:* LD_LIBRARY_PATH: make sure it includes $RDBASE/lib and
wherever the boost shared libraries were installed
* *Mac:* DYLD_LIBRARY_PATH: make sure it includes $RDBASE/lib and
wherever the boost shared libraries were installed
* The following are required if you are planning on using the
* Python wrappers: PYTHONPATH: make sure it includes $RDBASE
* Building:
* cd to $RDBASE
* `mkdir build`
* `cd build`
* `cmake ..` : See the section below on configuring the build if
you need to specify a non-default version of python or if you
have boost in a non-standard location
* `make` : this builds all libraries, regression tests, and
wrappers (by default).
* `make install`
See below for a list of [#Frequently_Encountered_Problems frequently
encountered problems] and solutions.
== Testing the Build (optional, but recommended) ==
* cd to $RDBASE/build and do `ctest`
* you're done!
== Advanced ==
=== Specifying an alternate Boost installation ===
You need to tell cmake where to find the boost libraries and header files:
If you have put boost in /opt/local, the cmake invocation would look like:
{{{cmake -DBOOST_ROOT=/opt/local ..}}}
=== Specifying an alternate Python installation ===
You need to tell cmake where to find the python library it should link
against and the python header files.
Here's a sample command line:
{{{cmake -D PYTHON_LIBRARY=/usr/lib/python2.5/config/libpython2.5.a -D PYTHON_INCLUDE_DIR=/usr/include/python2.5/ -D PYTHON_EXECUTABLE=/usr/bin/python ..}}}
The `PYTHON_EXECUTABLE` part is optional if the correct python is the
first version in your PATH.
=== Disabling the Python wrappers ==
You can completely disable building of the python wrappers by setting
the configuration variable RDK_BUILD_PYTHON_WRAPPERS to nil:
{{{cmake -D RDK_BUILD_PYTHON_WRAPPERS= ..}}}
=== Building the Java wrappers ===
*Additional Requirements*
* SWIG v2.0.x: http://www.swig.org
* Junit: get a copy of the junit .jar file from
https://github.com/KentBeck/junit/downloads and put it in the
directory `$RDBASE/External/java_lib` (you will need to create the
directory) and rename it to junit.jar.
*Building*
* When you invoke cmake add `-D RDK_BUILD_SWIG_WRAPPERS=ON` to the
arguments. For example: {{{cmake -D RDK_BUILD_SWIG_WRAPPERS=ON ..}}}
* Build and install normally using `make`. The directory
`$RDBASE/Code/JavaWrappers/gmwrapper` will contain the three
required files: libGraphMolWrap.so (libGraphMolWrap.jnilib on the
Mac), org.RDKit.jar, and org.RDKitDoc.jar.
*Using the wrappers*
To use the wrappers, the three files need to be in the same directory,
and that should be on your CLASSPATH and in the java.library.path. An
example using jython:
{{{
% CLASSPATH=$CLASSPATH:$RDBASE/Code/JavaWrappers/gmwrapper/org.RDKit.jar; jython -Djava.library.path=$RDBASE/Code/JavaWrappers/gmwrapper
Jython 2.2.1 on java1.6.0_20
Type "copyright", "credits" or "license" for more information.
>>> from org.RDKit import *
>>> from java import lang
>>> lang.System.loadLibrary('GraphMolWrap')
>>> m = RWMol.MolFromSmiles('c1ccccc1')
>>> m.getNumAtoms()
6L
}}}
== Frequently Encountered Problems ==
In each case I've replaced specific pieces of the path with `...`.
*Problem:*
{{{
Linking CXX shared library libSLNParse.so
/usr/bin/ld: .../libboost_regex.a(cpp_regex_traits.o): relocation R_X86_64_32S against `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' can not be used when making a shared object; recompile with -fPIC
.../libboost_regex.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [Code/GraphMol/SLNParse/libSLNParse.so] Error 1
make[1]: *** [Code/GraphMol/SLNParse/CMakeFiles/SLNParse.dir/all] Error 2
make: *** [all] Error 2
}}}
*Solution:*
Add this to the arguments when you call cmake:
`-DBoost_USE_STATIC_LIBS=OFF`
[http://www.mail-archive.com/rdkit-discuss@lists.sourceforge.net/msg01119.html more information here]
----
*Problem:*
{{{
.../Code/GraphMol/Wrap/EditableMol.cpp:114: instantiated from here
.../boost/type_traits/detail/cv_traits_impl.hpp:37: internal compiler error: in make_rtl_for_nonlocal_decl, at cp/decl.c:5067
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://bugzilla.redhat.com/bugzilla> for instructions.
Preprocessed source stored into /tmp/ccgSaXge.out file, please attach this to your bugreport.
make[2]: *** [Code/GraphMol/Wrap/CMakeFiles/rdchem.dir/EditableMol.cpp.o] Error 1
make[1]: *** [Code/GraphMol/Wrap/CMakeFiles/rdchem.dir/all] Error 2
make: *** [all] Error 2
}}}
*Solution:*
Add `#define BOOST_PYTHON_NO_PY_SIGNATURES` at the top of
`Code/GraphMol/Wrap/EditableMol.cpp`
[http://www.mail-archive.com/rdkit-discuss@lists.sourceforge.net/msg01178.html
more information here]
----
*Problem:*
Your system has a version of boost installed in /usr/lib, but you
would like to force the RDKit to use a more recent one.
*Solution:*
This can be solved by using cmake version 2.8.3 (or more recent) and
providing the `-D Boost_NO_SYSTEM_PATHS=ON` argument :
{{{
cmake -D BOOST_ROOT=/usr/local -D Boost_NO_SYSTEM_PATHS=ON ..
}}}
#------------------------------------------------
= Building on Windows =
#------------------------------------------------
== Software to Install ==
* Microsoft Visual C++ : The Express version has everything
necessary and can be downloaded for free
[http://www.microsoft.com/express/download/ from Microsoft]. This
is a big installation and will take a while. The RDKit has been
successfully built with all version of visual c++ since 6.0, so
the current version of VC++ (2010 as of this writing) should be
fine.
* cmake : [http://www.cmake.org/cmake/resources/software.html cmake] should be installed.
* python : [http://www.python.org/download python] should be installed
* numpy : the
[http://sourceforge.net/project/showfiles.php?group_id=1369&package_id=175103
current version of numpy] should be installed. It's fine to use
the binary installer.
* boost : download a copy of the current versions of the
[http://www.boost.org/users/download/ boost source distribution
and boost-Jam]. Both are available from the same link, be sure to
get the `.ntx86.zip` file for boost-Jam. Extract the source
distribution (to, for example, c:\boost\boost_1_43_0) and copy the
bjam.exe executable from the boost jam zip file to the same
directory. *Note:* it is also possible to download and use a
precompiled version of the boost libraries from
http://www.boostpro.com/download/ . When you run the installer,
the only binary libraries you need are python and regex.
* a subversion client : _This is only necessary if you are planning
on building development versions of the RDKit_. A command line
client for subversion can be installed as part of the cygwin
installation, or a very nice graphical client that integrates well
with windows explorer can be downloaded from the
[http://tortoisesvn.tigris.org/ Tortoise SVN home page].
* Optional packages
* If you would like to install the RDKit InChI support (first
available in the Q2 2011 release), follow the instructions in
$RDBASE/External/INCHI-API to get a copy of the InChI source and
put it in the appropriate place.
== Setup and Preparation ==
This section assumes that python is installed in c:\Python26, that the
boost libraries have been extracted to c:\boost\boost_1_43_0, and that
you will build the RDKit from a directory named c:\RDKit. If any of
these conditions is not true, just change the corresponding paths.
_Notes_ :
# If you install things in paths that have spaces in their names,
be sure to use quotes properly in your environment variable
definitions.
# If you have more than one version of visual studio installed,
the instructions below may not use the correct compiler. In this
case you need to use a different `--toolset` argument to specify
the version of the compiler used in all commands. Information
for this situation is covered in
[http://www.boost.org/doc/libs/1_43_0/more/getting_started/windows.html
the boost.build documentation].
* Make sure that boost builds properly by going to the directory
c:\boost\boost_1_43_0 and executing the command: `.\bjam.exe
--toolset=msvc --with-regex --with-python release install`. This
may take a while, but it should finish without errors. _This step
is not required if you are using a pre-compiled version of boost._
* If you are planning on using a development version of the RDKit:
get a copy of the current RDKit source using subversion. If you're
using the command-line client the command is: `svn co
http://rdkit.svn.sourceforge.net/svnroot/rdkit/trunk c:\RDKit`
* If you are planning on using a released version of the RDKit : get
a copy of the most recent release and extract it into the directory c:\RDKit
* Set the required environment variables (you can set this in cygwin
or in windows. If you set them in windows, be sure to restart your
cygwin window):
* RDBASE = c:\RDKit *Note* this variable is optional for the Q3
2010 release and later releases.
* Make sure that the directory c:\Python26 is in your PATH
* Make sure that the directory c:\RDKit\lib is in your PATH
* Make sure that the directory c:\boost\lib is in your PATH _If you
are using a precompiled version of boost, make sure the directory
containing its DLLs is in your path._
* Make sure that the directory c:\RDKit is in your PYTHONPATH
== Building the Code ==
* follow the Installing Boost instructions above.
* environment variables:
* if you built your own version of boost and cmake complains about
not being able to find it, define the environment variable
BOOST_ROOT to point to the directory containing the boost
source.
* Configure the build:
* Start the cmake gui
* tell it where the source code is (e.g. c:/RDKit) and where to
build the binaries (recommended: c:/RDKit/build)
* click "Configure", select your compiler, and wait until the
basic configuration is complete, you'll see a bunch of red lines
entries in the main windows.
* click "Configure" again
* click "Generate"
* Build:
* open the solution file that cmake created
(c:/RDKit/build/RDKit.sln) with Visual Studio.
* check to be sure that you're building a Release build (for some
reason CMake produces solution files that default to doing a
Debug build)
* build the "ALL_BUILD" target; this will take a while and
generate warnings, but there should be no errors. *Note:* if you
are building the SWIG wrappers you may get an error the first
time you try to build them. If you see this error, try building
ALL_BUILD again; it should work the second time.
* build the "INSTALL" target
== Testing the Build (optional, but recommended) ==
* cd to $RDBASE/build and run `ctest`
* you're done!
== Additional notes ==
* There is a bug in boost v1.44 that causes link errors related to
boost-serialization on windows. To fix this you need to edit one
of the boost header
files. [https://groups.google.com/group/boost-list/msg/066897d43d9ca27a?hl=en
This post] contains instructions on what needs to be done.
Instructions for building the RDKit can be found in the file
Docs/Book/Install.rst.
=======
# $Id$
# Copyright (C) 2008-2010 Greg Landrum
# Copyright (C) 2008-2013 Greg Landrum

11
README
View File

@@ -1,9 +1,8 @@
The file Docs/SoftwareRequirements.txt documents the additional
software that is required to build or use the RDKit.
Instructions for building the RDKit can be found in the file
Docs/Book/Install.rst.
Build instructions are in the file INSTALL.
The most up-to-date build instructions can be found on the wiki:
http://code.google.com/p/rdkit/wiki/GettingStarted
The online version of the documentation is available here:
http://www.rdkit.org/docs/index.html
Some information about using the software from Python is in the
"Getting Started in Python" document in Docs/Book
@@ -17,4 +16,4 @@ license which covers this software and its associated data and
documents.
# $Id$
# Copyright (C) 2008-2010 Greg Landrum
# Copyright (C) 2008-2013 Greg Landrum

View File

@@ -1,7 +1,7 @@
Unless otherwise noted, all files in this directory and all
subdirectories are distributed under the following license:
Copyright (c) 2006-2011
Copyright (c) 2006-2013
Rational Discovery LLC, Greg Landrum, and Julie Penzotti
All rights reserved.