mirror of
https://github.com/rdkit/rdkit.git
synced 2026-06-03 21:44:30 +08:00
docs update
This commit is contained in:
@@ -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)
|
||||
|
||||
|
||||
@@ -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
402
INSTALL
@@ -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
11
README
@@ -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
|
||||
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user