Skip to content
Newer
Older
100644 158 lines (149 sloc) 6.22 KB
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
1 # This file provides configuration information about non-Python dependencies for
2 # numpy.distutils-using packages. Create a file like this called "site.cfg" next
3 # to your package's setup.py file and fill in the appropriate sections. Not all
4 # packages will use all sections so you should leave out sections that your
5 # package does not use.
6
f13e905 @rkern Add another place to check for configuration, namely ~/.numpy-site.cf…
rkern authored
7 # To assist automatic installation like easy_install, the user's home directory
8 # will also be checked for the file ~/.numpy-site.cfg .
9
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
10 # The format of the file is that of the standard library's ConfigParser module.
11 #
12 # http://www.python.org/doc/current/lib/module-ConfigParser.html
13 #
14 # Each section defines settings that apply to one particular dependency. Some of
15 # the settings are general and apply to nearly any section and are defined here.
16 # Settings specific to a particular section will be defined near their section.
17 #
18 # libraries
19 # Comma-separated list of library names to add to compile the extension
20 # with. Note that these should be just the names, not the filenames. For
21 # example, the file "libfoo.so" would become simply "foo".
22 # libraries = lapack,f77blas,cblas,atlas
23 #
24 # library_dirs
25 # List of directories to add to the library search path when compiling
26 # extensions with this dependency. Use the character given by os.pathsep
6439e35 @rgommers DOC: document inconsistent path separator in site.cfg path lists. Clo…
rgommers authored
27 # to separate the items in the list. Note that this character is known to
28 # vary on some unix-like systems; if a colon does not work, try a comma.
29 # This also applies to include_dirs and src_dirs (see below).
30 # On UN*X-type systems (OS X, most BSD and Linux systems):
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
31 # library_dirs = /usr/lib:/usr/local/lib
32 # On Windows:
33 # library_dirs = c:\mingw\lib,c:\atlas\lib
6439e35 @rgommers DOC: document inconsistent path separator in site.cfg path lists. Clo…
rgommers authored
34 # On some BSD and Linux systems:
35 # library_dirs = /usr/lib,/usr/local/lib
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
36 #
37 # include_dirs
38 # List of directories to add to the header file earch path.
39 # include_dirs = /usr/include:/usr/local/include
40 #
41 # src_dirs
42 # List of directories that contain extracted source code for the
43 # dependency. For some dependencies, numpy.distutils will be able to build
44 # them from source if binaries cannot be found. The FORTRAN BLAS and
45 # LAPACK libraries are one example. However, most dependencies are more
46 # complicated and require actual installation that you need to do
47 # yourself.
48 # src_dirs = /home/rkern/src/BLAS_SRC:/home/rkern/src/LAPACK_SRC
49 #
50 # search_static_first
51 # Boolean (one of (0, false, no, off) for False or (1, true, yes, on) for
52 # True) to tell numpy.distutils to prefer static libraries (.a) over
53 # shared libraries (.so). It is turned off by default.
54 # search_static_first = false
55
56 # Defaults
57 # ========
58 # The settings given here will apply to all other sections if not overridden.
59 # This is a good place to add general library and include directories like
60 # /usr/local/{lib,include}
61 #
28b0f98 @stefanv Site.cfg can still have DEFAULT section (closes #751).
stefanv authored
62 #[DEFAULT]
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
63 #library_dirs = /usr/local/lib
64 #include_dirs = /usr/local/include
65
ffd4332 @ogrisel site.cfg.example should not reference blas_opt and lapack_opt
ogrisel authored
66 # Atlas
67 # -----
68 # Atlas is an open source optimized implementation of the BLAS and Lapack
69 # routines. Numpy will try to build against Atlas by default when available in
70 # the system library dirs. To build numpy against a custom installation of
71 # Atlas you can add an explicit section such as the following. Here we assume
72 # that Atlas was configured with ``prefix=/opt/atlas``.
73 #
74 # [atlas]
75 # library_dirs = /opt/atlas/lib
76 # include_dirs = /opt/atlas/include
c50af53 @rgommers DOC: update site.cfg.example with notes about umfpack/fftw.
rgommers authored
77
ffd4332 @ogrisel site.cfg.example should not reference blas_opt and lapack_opt
ogrisel authored
78 # OpenBLAS
6c81671 @jseabold BLD: Update with information about openblas.
jseabold authored
79 # --------
ffd4332 @ogrisel site.cfg.example should not reference blas_opt and lapack_opt
ogrisel authored
80 # OpenBLAS is another open source optimized implementation of BLAS and Lapack
81 # and can be seen as an alternative to Atlas. To build numpy against OpenBLAS
82 # instead of Atlas, use this section instead of the above, adjusting as needed
83 # for your configuration (in the following example we installed OpenBLAS with
fb0c7bd @ogrisel Use the default install location of OpenBLAS in the example
ogrisel authored
84 # ``make install PREFIX=/opt/OpenBLAS``.
6c81671 @jseabold BLD: Update with information about openblas.
jseabold authored
85 #
7488ebe @larsmans DOC: site.cfg: warn against OpenBLAS and multiprocessing
larsmans authored
86 # **Warning**: OpenBLAS, by default, is built in multithreaded mode. Due to the
87 # way Python's multiprocessing is implemented, a multithreaded OpenBLAS can
88 # cause programs using both to hang as soon as a worker process is forked on
8a4ff79 @juliantaylor DOC: update openblas fork warning with fixed pthread build info
juliantaylor authored
89 # POSIX systems (Linux, Mac).
90 # This is fixed in Openblas 0.2.9 for the pthread build, the OpenMP build using
91 # GNU openmp is as of gcc-4.9 not fixed yet.
92 # Python 3.4 will introduce a new feature in multiprocessing, called the
93 # "forkserver", which solves this problem. For older versions, make sure
94 # OpenBLAS is built using pthreads or use Python threads instead of
95 # multiprocessing.
7488ebe @larsmans DOC: site.cfg: warn against OpenBLAS and multiprocessing
larsmans authored
96 # (This problem does not exist with multithreaded ATLAS.)
97 #
98 # http://docs.python.org/3.4/library/multiprocessing.html#contexts-and-start-methods
8a4ff79 @juliantaylor DOC: update openblas fork warning with fixed pthread build info
juliantaylor authored
99 # https://github.com/xianyi/OpenBLAS/issues/294
7488ebe @larsmans DOC: site.cfg: warn against OpenBLAS and multiprocessing
larsmans authored
100 #
6c81671 @jseabold BLD: Update with information about openblas.
jseabold authored
101 # [openblas]
102 # libraries = openblas
fb0c7bd @ogrisel Use the default install location of OpenBLAS in the example
ogrisel authored
103 # library_dirs = /opt/OpenBLAS/lib
104 # include_dirs = /opt/OpenBLAS/include
6c81671 @jseabold BLD: Update with information about openblas.
jseabold authored
105
ffd4332 @ogrisel site.cfg.example should not reference blas_opt and lapack_opt
ogrisel authored
106 # MKL
107 #----
108 # MKL is Intel's very optimized yet proprietary implementation of BLAS and
109 # Lapack.
110 # For recent (9.0.21, for example) mkl, you need to change the names of the
111 # lapack library. Assuming you installed the mkl in /opt, for a 32 bits cpu:
112 # [mkl]
113 # library_dirs = /opt/intel/mkl/9.1.023/lib/32/
114 # lapack_libs = mkl_lapack
115 #
116 # For 10.*, on 32 bits machines:
117 # [mkl]
118 # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/
119 # lapack_libs = mkl_lapack
120 # mkl_libs = mkl, guide
6c81671 @jseabold BLD: Update with information about openblas.
jseabold authored
121
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
122 # UMFPACK
123 # -------
c50af53 @rgommers DOC: update site.cfg.example with notes about umfpack/fftw.
rgommers authored
124 # The UMFPACK library is used in scikits.umfpack to factor large sparse matrices.
125 # It, in turn, depends on the AMD library for reordering the matrices for
126 # better performance. Note that the AMD library has nothing to do with AMD
127 # (Advanced Micro Devices), the CPU company.
128 #
129 # UMFPACK is not needed for numpy or scipy.
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
130 #
131 # http://www.cise.ufl.edu/research/sparse/umfpack/
132 # http://www.cise.ufl.edu/research/sparse/amd/
c50af53 @rgommers DOC: update site.cfg.example with notes about umfpack/fftw.
rgommers authored
133 # http://scikits.appspot.com/umfpack
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
134 #
135 #[amd]
136 #amd_libs = amd
137 #
138 #[umfpack]
139 #umfpack_libs = umfpack
140
141 # FFT libraries
142 # -------------
143 # There are two FFT libraries that we can configure here: FFTW (2 and 3) and djbfft.
c50af53 @rgommers DOC: update site.cfg.example with notes about umfpack/fftw.
rgommers authored
144 # Note that these libraries are not needed for numpy or scipy.
57dbc1b @rkern Fleshed-out site.cfg example.
rkern authored
145 #
146 # http://fftw.org/
147 # http://cr.yp.to/djbfft.html
148 #
149 # Given only this section, numpy.distutils will try to figure out which version
150 # of FFTW you are using.
151 #[fftw]
152 #libraries = fftw3
153 #
154 # For djbfft, numpy.distutils will look for either djbfft.a or libdjbfft.a .
155 #[djbfft]
156 #include_dirs = /usr/local/djbfft/include
157 #library_dirs = /usr/local/djbfft/lib
Something went wrong with that request. Please try again.