Add link for manually downloading Waf.
[vapoursynth-svn.git] / INSTALL
blob8f75be26af2af2d474436ed3fc50c64fabcd5bc3
1 Installation
2 ------------
4 First, a couple of things to note:
6 * You need to be on Windows, Linux, or OS X.
7 * You need to have the QtCore libraries and headers installed.
8 * You need to have the libraries and headers for libavutil
9   and libswscale installed.
10 * You need to have either GCC, Clang, MSVC, or ICC/ICL installed.
11   Both a C and C++ compiler are required.
12 * You need to have Yasm installed.
13 * You need Python 3 to build the Cython wrapper.
14 * You need to have Cython installed in your Python 3 environment
15   in order to invoke the setup script.
17 First off, you'll want to fetch Waf which is the build tool
18 VapourSynth uses:
20     $ ./bootstrap.sh
22 You don't have to fetch it with this script (it requires Wget);
23 you can also simply download it from the official Google Code
24 repository: http://code.google.com/p/waf
26 Then, configure the project:
28     $ ./waf configure
30 The configure operation has some options which can be used to
31 fine-tune the build:
33 * --prefix=path (default: /usr/local)
34   Specifies where to install the final VapourSynth artifacts.
35 * --mode=debug/release (default: debug)
36   Specifies what mode to compile C and C++ code in. When in
37   debug mode, debug info and debugging helpers will be emitted
38   by the compiler, and no optimization will be done. In release
39   mode, all (safe) optimizations are performed and no debug
40   info is generated.
41 * --static=true/false (default: false)
42   Specifies whether to build a static library in addition to the
43   shared library.
44 * --filters=true/false (default: true)
45   Specifies whether to build the included filters. These are
46   always built as shared libraries.
47 * --cython=true/false (default: true)
48   Specifies whether to preprocess the Cython sources. This is
49   required if you plan to build and install the Cython wrapper.
50 * --avisynth=true/false (default: true)
51   Specifies whether to build the Avisynth compatibility layer
52   when building on Windows.
54 Once the project is configured, simply execute:
56     $ ./waf build
58 By default, Waf builds tasks in parallel. You can control the
59 level of parallelism with the -j option, like with Make.
61 If you want to build the Cython wrapper, you can do so now by
62 executing:
64     $ ./setup.py build
66 Finally, to install VapourSynth:
68     $ ./waf install
70 And to uninstall:
72     $ ./waf uninstall
74 To install the Cython wrapper:
76     $ ./setup.py install
78 Note that the setup script has a --prefix option like Waf.