File: install.rst

package info (click to toggle)
petsc4py 3.14.1-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 22,504 kB
  • sloc: javascript: 8,795; python: 8,131; ansic: 1,531; f90: 322; makefile: 316; sh: 10
file content (126 lines) | stat: -rw-r--r-- 3,667 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
Installation
============

Using **pip** or **easy_install**
---------------------------------

You can use :program:`pip` to install :mod:`petsc4py` and its
dependencies (:mod:`mpi4py` is optional but highly recommended)::

  $ pip install [--user] numpy mpi4py
  $ pip install [--user] petsc petsc4py

Alternatively, you can use :program:`easy_install` (deprecated)::

  $ easy_install petsc4py

If you already have a working PETSc installation, set environment
variables :envvar:`PETSC_DIR` and :envvar:`PETSC_ARCH` to appropriate
values and next use :program:`pip`::

  $ export PETSC_DIR=/path/to/petsc
  $ export PETSC_ARCH=arch-linux2-c-opt
  $ pip install petsc4py


Using **distutils**
-------------------

Requirements
^^^^^^^^^^^^

You need to have the following software properly installed in order to
build *PETSc for Python*:

* Any MPI_ implementation [#]_ (e.g., MPICH_ or `Open MPI`_),
  built with shared libraries.

* A matching version of PETSc_ built with shared libraries.

* NumPy_ package.

.. [#] Unless you have appropiatelly configured and built PETSc
       without MPI (configure option ``--with-mpi=0``).

.. [#] You may need to use a parallelized version of the Python
       interpreter with some MPI-1 implementations (e.g. MPICH1).

.. include:: links.txt

Downloading
^^^^^^^^^^^

The *PETSc for Python* package is available for download at the
Python Package Index. You can use
:program:`curl` or :program:`wget` to get a release tarball.

* Using :program:`curl`::

    $ curl -LO https://pypi.io/packages/source/p/petsc4py/petsc4py-X.Y.Z.tar.gz

* Using :program:`wget`::

    $ wget https://pypi.io/packages/source/p/petsc4py/petsc4py-X.Y.Z.tar.gz

Building
^^^^^^^^

After unpacking the release tarball::

  $ tar -zxf petsc4py-X.Y.Z.tar.gz
  $ cd petsc4py-X.Y.Z

the distribution is ready for building.

.. note:: **Mac OS X** users employing a Python distribution built
   with **universal binaries** may need to set the environment
   variables :envvar:`MACOSX_DEPLOYMENT_TARGET`, :envvar:`SDKROOT`,
   and :envvar:`ARCHFLAGS` to appropriate values. As an example,
   assume your Mac is running **Snow Leopard** on a **64-bit Intel**
   processor and you want to override the hard-wired cross-development
   SDK in Python configuration, your environment should be modified
   like this::

     $ export MACOSX_DEPLOYMENT_TARGET=10.6
     $ export SDKROOT=/
     $ export ARCHFLAGS='-arch x86_64'

Some environment configuration is needed to inform the location of
PETSc. You can set (using :command:`setenv`, :command:`export` or what
applies to you shell or system) the environment variables
:envvar:`PETSC_DIR`, and :envvar:`PETSC_ARCH` indicating where you
have built/installed PETSc::

  $ export PETSC_DIR=/usr/local/petsc
  $ export PETSC_ARCH=arch-linux2-c-opt

Alternatively, you can edit the file :file:`setup.cfg` and provide the
required information below the ``[config]`` section::

  [config]
  petsc_dir  = /usr/local/petsc
  petsc_arch = arch-linux2-c-opt
  ...

Finally, you can build the distribution by typing::

  $ python setup.py build

Installing
^^^^^^^^^^

After building, the distribution is ready for installation.

If you have root privileges (either by log-in as the root user of by
using :command:`sudo`) and you want to install *PETSc for Python* in
your system for all users, just do::

  $ python setup.py install

The previous steps will install the :mod:`petsc4py` package at standard
location :file:`{prefix}/lib/python{X}.{Y}/site-packages`.

If you do not have root privileges or you want to install *PETSc for
Python* for your private use, just do::

  $ python setup.py install --user