Compile AviSynth
From Avisynth
Contents |
[edit] Compiling AviSynth v2.54 and older versions
Install Microsoft Visual Studio (containing VC6). You need the Professional or Enterprise edition, since the Student (Standard) edition is not enough. The reason is that you need the Processor Pack (with MASM for certain optimization code), which you can't install with the Student Edition. Also, you must not install SP6, as it does not support the Processor Pack (and will remove it).
- Install Visual Studio SP5 (130mb).
- Install SP5 Processor Pack (2mb).
- Install Platform SDK (31mb for core sdk - minimal). MS wrote: the last SDK that will work with VC 6.0 is the February 2003 Edition. But MS removed it. Find old or try use new version.
- Install DirectX 9 SDK (320mb). (SDK 8.1 was used for old Avisynth).
And then you are all good for the needed downloads ...
1) Recompile
\<DXSDK directory >\samples\Multimedia\DirectShow\BaseClasses\baseclasses.dsp
in order to avoid a nasty bug (in release & debug mode).
2) Go to VC++, Tools, options, Directories:
There check .h (headers) section:
a working path order is:
... DXSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES
... DXSDK\INCLUDE
... MICROSOFT SDK\INCLUDE
... Microsoft Visual Studio\VC98\INCLUDE
... Microsoft Visual Studio\VC98\MFC\INCLUDE
... Microsoft Visual Studio\VC98\ATL\INCLUDE
next step go in Library to set used the libraries:
... DXSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\DEBUG
... DXSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\RELEASE
... DXSDK\lib
... Microsoft SDK\Lib
... Microsoft Visual Studio\VC98\Lib
... Microsoft Visual Studio\VC98\Lib
... Microsoft Visual Studio\VC98\MFC\LIB
then you might be able to compile it
[edit] Compiling AviSynth v2.55 and more recent versions
From AviSynth 2.55 it should be considerably easier to compile AviSynth, as the DirectShow stuff has been moved to a separate plugin.
This eliminates all DirectX stuff. This will only be needed if you want to compile the DirectShow plugin.
The current code base (up to AviSynth 2.5.7) is explicitly for Visual C++ 6 with the Processor Pack add on.
[edit] Compiling Avisynth with MS VC 2003
Using MS VC 2003 compilers is possible but will require some changes.
1.) get source zip or fresh cvs checkout (project file, libs, everything)
2.) opened workspace in vs.net 2003, and selected "yes to all" on the convert projects popup
3.) set configuration to release
4.) had to do the usual thing for the custom build step command line on the asm file "convert_a.asm", which is take out the quotation marks
5.) the SoundTouch lib still has problems, replace it with own build. Get source code (v1.3.1) at http://www.surina.net/soundtouch and compile the library. You will have to set the Runtime Library under C/C++ codegeneration to Multi-threaded DLL when you compile the SoundTouch lib with VS .NET 2003 (you should use the same compiler you want to compile avisynth with).
6.) compile and it works, has the usual warnings but those are fine
[edit] Compiling Avisynth with MS VC 2005
Using both 2005 and 2005 Express compilers is possible but will require some changes. Please feel free to openly discuss any issues you find so other may benefit from your experiences.
Be aware the 2005 RT environment changes the way system exceptions are handled and processed. So your builds may not respond as expected to error conditions.
AviSynth 2.6 move to VC2005 Express: http://forum.doom9.org/showthread.php?t=112138
[edit] Discussion topic about compiling AviSynth
Compiling Avisynth: http://forum.doom9.org/showthread.php?t=41913

