3
This is a small list of steps in order to build portaudio
4
(Currently v19-devel) into a VC6 DLL and lib file.
5
This DLL contains all 3 current win32 PA APIS (MM/DS/ASIO)
7
1)Copy the source dirs that comes with the ASIO SDK inside src\hostapi\asio\ASIOSDK
8
so you should now have example:
10
portaudio19svn\src\hostapi\asio\ASIOSDK\common
11
portaudio19svn\src\hostapi\asio\ASIOSDK\host
12
portaudio19svn\src\hostapi\asio\ASIOSDK\host\sample
13
portaudio19svn\src\hostapi\asio\ASIOSDK\host\pc
14
portaudio19svn\src\hostapi\asio\ASIOSDK\host\mac (not needed)
16
You dont need "driver"
18
To build without ASIO (or another Host API) see the "Building without ASIO support" section below.
21
*If you have Visual Studio 6.0*, please make sure you have it updated with the latest (and final)
22
microsoft libraries for it, namely:
26
http://msdn2.microsoft.com/en-us/vstudio/aa718363.aspx
27
Yes there EXISTS a service pack 6 , but the processor pack (below) isnt compatible with it.
29
Processor Pack(only works with above SP5)
31
http://msdn2.microsoft.com/en-us/vstudio/Aa718349.aspx
32
This isnt absolutely required for portaudio, but if you plan on using SSE intrinsics and similar things.
33
Up to you to decide upon Service pack 5 or 6 depending on your need for intrinsics.
35
Platform SDK (Feb 2003) :
37
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
38
(This will allow your code base to be x64 friendly, with correct defines
39
for LONG_PTR and such)
40
NOTE A) Yes you have to use IE activex scripts to install that - wont work in Firefox, you
41
may have to temporarily change tyour default browser(aint life unfair)
42
NOTE B) Dont forget to hit "Register PSDK Directories with Visual Studio".
43
you can make sure its right in VC6 if you open tools/options/directories/include files and you see SDK 2003 as the FIRST entry
44
(it must be the same for libs)
46
DirectX 9.0 SDK Update - (Summer 2003)
48
http://www.microsoft.com/downloads/details.aspx?familyid=9216652f-51e0-402e-b7b5-feb68d00f298&displaylang=en
49
Again register the links in VC6, and check inside vc6 if headers are in second place right after SDk 2003
51
*If you have 7.0(VC.NET/2001) or 7.1(VC.2003) *
52
then I suggest you open portaudio.dsp (and convert if needed)
54
*If you have Visual Studio 2005*, I suggest you open the portaudio.sln file
55
which contains 4 configurations. Win32/x64 in both Release and Debug variants
57
hit compile and hope for the best.
59
3)Now in any project, in which you require portaudio,
60
you can just link with portaudio_x86.lib, (or _x64) and of course include the
62
(portaudio.h, and/or pa_asio.h , pa_x86_plain_converters.h) See (*)
64
4) Your new exe should now use portaudio_xXX.dll.
69
(*): you may want to add/remove some DLL entry points.
70
Right now those 6 entries are _not_ from portaudio.h
74
PaAsio_GetAvailableLatencyValues @50
75
PaAsio_ShowControlPanel @51
76
PaUtil_InitializeX86PlainConverters @52
77
PaAsio_GetInputChannelName @53
78
PaAsio_GetOutputChannelName @54
79
PaUtil_SetLogPrintFunction @55
82
*** Building without ASIO support ***
84
To build PortAudio without ASIO support you need to:
85
A. Make sure your project doesn't try to build any ASIO SDK files.
86
If you're using one of the shipped projects, remove the ASIO related files
89
B. Make sure your project doesn't try to build the PortAudio ASIO
91
src/hostapi/pa_asio.cpp src/hostapi/iasiothiscallresolver.cpp
92
If you're using one of the shipped projects remove them from the project.
94
C. Define the PA_NO_ASIO preprocessor symbol in the project properties.
95
In VS2005 this can be added under
96
Project Properties > Configuration Properties > C/C++ > Preprocessor > Preprocessor Definitions
98
Defining PA_NO_ASIO stops src/os/win/pa_win_hostapis.c
99
from trying to initialize the PA ASIO implementation.
101
D. Remove PaAsio_* entry points from portaudio.def
103
A similar procedure can be used to omit any of the other host APIs from the
104
build. The relevant preprocessor symbols used by pa_win_hostapis.c are:
105
PA_NO_WMME, PA_NO_DS, PA_NO_ASIO, PA_NO_WASAPI and PA_NO_WDMKS
109
David Viens, davidv@plogue.com
b'\\ No newline at end of file'