7
7
pyobjcryst
8
8
==========
9
9
10
- Python bindings to ObjCryst++ Object-Oriented Crystallographic Library
10
+ Python bindings to ObjCryst++, the Object-Oriented Crystallographic Library.
11
11
12
12
The documentation for this release of pyobjcryst can be found on-line at
13
13
http://diffpy.github.io/pyobjcryst.
@@ -16,8 +16,7 @@ http://diffpy.github.io/pyobjcryst.
16
16
REQUIREMENTS
17
17
------------
18
18
19
- pyobjcryst requires Python 2.6 or 2.7, C++ compiler and the following
20
- software:
19
+ pyobjcryst requires Python 2.7, C++ compiler and the following software:
21
20
22
21
* ``libobjcryst `` - Object-Oriented Crystallographic Library for C++,
23
22
https://github.com/diffpy/libobjcryst
@@ -26,55 +25,54 @@ software:
26
25
* ``python-dev `` - header files for interfacing Python with C
27
26
* ``libboost-all-dev `` - Boost C++ libraries and development files
28
27
29
- With the exception of libobjcryst, the required software is commonly
30
- available in system package manager, for example, on Ubuntu Linux the
31
- required software can be installed as::
28
+ We recommend to use `Anaconda Python <https://www.continuum.io/downloads >`_
29
+ as it allows to install all software dependencies together with
30
+ pyobjcryst. For other Python distributions it is necessary to
31
+ install the required software separately. As an example, on Ubuntu
32
+ Linux the required software can be installed using ::
32
33
33
34
sudo apt-get install \
34
35
python-setuptools python-numpy scons \
35
36
build-essential python-dev libboost-all-dev
36
37
37
- For Mac OS X machine with the MacPorts package manager the installation is::
38
38
39
- sudo port install \
40
- python27 py27-setuptools py27-numpy scons boost
41
-
42
- When installing with MacPorts, make sure that MacPorts bin directory is the
43
- first in the system PATH and python27 is selected as the default Python
44
- version in MacPorts::
39
+ INSTALLATION
40
+ ------------
45
41
46
- sudo port select --set python python27
42
+ The preferred method is to use Anaconda Python and install from the
43
+ "diffpy" channel of Anaconda packages ::
47
44
45
+ conda config --add channels diffpy
46
+ conda install pyobjcryst
48
47
49
- INSTALLATION
50
- ------------
48
+ pyobjcryst is also included in the "diffpy-cmi" collection
49
+ of packages for structure analysis ::
51
50
52
- The easiest option is to use the latest DiffPy-CMI release bundle from
53
- http://www.diffpy.org, which comes with pyobjcryst and all other
54
- dependencies included.
51
+ conda install diffpy-cmi
55
52
56
- If you prefer to install from sources, you must first install the libobjcryst
57
- library as per the instructions at
53
+ If you prefer to use other Python distribution or install from sources,
54
+ you must first install the libobjcryst library as per the instructions at
58
55
https://github.com/diffpy/libobjcryst. Make sure other required
59
- software is in place as well and then run::
56
+ software is also in place and then run::
60
57
61
- sudo python setup.py install
58
+ python setup.py install
62
59
63
- This installs pyobjcryst for all users to the default system location.
64
- If administrator (root) access is not available, see the usage info from
65
- ``python setup.py install --help `` for options for installing to a user-writable
66
- location. The installation integrity can be verified by changing to
67
- the HOME directory and running::
60
+ You may need to use ``sudo `` with system Python so the process is
61
+ allowed to copy files to system directories. If administrator (root)
62
+ access is not available, see the usage information from
63
+ ``python setup.py install --help `` for options to install to
64
+ a user-writable location. The installation integrity can be verified by
65
+ changing to the HOME directory and running ::
68
66
69
67
python -m pyobjcryst.tests.run
70
68
71
69
An alternative way of installing pyobjcryst is to use the SCons tool,
72
- which can speed up the process by compiling C++ files in parallel (-j4)::
70
+ which can speed up the installation by compiling C++ files in several
71
+ parallel jobs (-j4)::
73
72
74
- sudo scons -j4 install
73
+ scons -j4 install
75
74
76
- See ``scons -h `` for description of build targets and options for
77
- choosing the installation directory.
75
+ See ``scons -h `` for description of build targets and options.
78
76
79
77
80
78
DEVELOPMENT
@@ -87,13 +85,13 @@ https://github.com/diffpy/pyobjcryst.
87
85
88
86
Feel free to fork the project and contribute. To install pyobjcryst
89
87
in a development mode, where its sources are directly used by Python
90
- rather than copied to a system directory, use::
88
+ rather than copied to a system directory, use ::
91
89
92
90
python setup.py develop --user
93
91
94
92
When developing it is preferable to compile the C++ files with
95
93
SCons using the ``build=develop `` option, which compiles the extension
96
- module with debug information and C-assertions checks::
94
+ module with debug information and C-assertions checks ::
97
95
98
96
scons -j4 build=debug develop
99
97
0 commit comments