Difference between revisions of "PortAudio"
(added v19, needed by Csound (to be contributed soon)) |
m (fixed spelling of dependencies) |
||
Line 24: | Line 24: | ||
=== Optional === | === Optional === | ||
− | * [[ | + | * [[ALSA Library]] |
− | * [[ | + | * [[JACK]] |
− | * [[ | + | * [[OSS]] |
* [[asihpi]] | * [[asihpi]] | ||
* todo: others? (not well documented) | * todo: others? (not well documented) |
Revision as of 21:21, 25 July 2009
Download Source: | http://www.portaudio.com/archives/portaudio_v18_1.zip |
---|---|
and/or Download v19 Source: | http://www.portaudio.com/archives/pa_snapshot.tgz |
Contents
Introduction to PortAudio
PortAudio is a free, cross platform, open-source, audio I/O library. It lets you write simple audio programs in 'C' that will compile and run on many platforms including Windows, Macintosh (8,9,X), Unix (OSS), SGI, and BeOS. PortAudio is intended to promote the exchange of audio synthesis software between developers on different platforms.
Project Homepage: http://www.portaudio.com/
The v19 build instructions shown here were tested using the 25-July-2009 v19 trunk snapshot.
Since the v19 API is not compatible with v18, I am adding v19 build instructions without removing the existing v18 build instructions here.Dependencies
From v19.
Optional
- ALSA Library
- JACK
- OSS
- asihpi
- todo: others? (not well documented)
Configuration Information
From v19.
--enable-cxx: build C++ wrapper |
Non-Multilib v18
Compile the package:
sed -i -e "s@/usr/local@/usr@g" Makefile.linux make -f Makefile.linux
Install the package:
make -f Makefile.linux libinstall
Non-Multilib v19
If you already have v18 installed, the sharable library was probably installed without versioning. (That's what the v18 instructions here do.) To prevent conflict between the two versions, add library versioning.
mv /usr/lib/libportaudio.so /usr/lib/libportaudio.so.0.0.18 && pushd /usr/lib && ln -s libportaudio.so.0.0.18 libportaudio.so && popd
Now, the two versions of the library could co-exist in the same directory, but there are also two different incompatible versions of the header file, which would likely cause problems with future builds of other packages that need one or the other of these versions. So we had better install v19 in /opt.
Compile the package:
./configure --prefix=/opt/portaudio && make
Install the package:
make install && cat > /etc/ld.so.conf < "EOF" # Begin portaudio addition to /etc/ld.so.conf /opt/portaudio/lib # End portaudio addition EOF cat > /etc/profile.d/50-portaudio.sh < "EOF" # Begin /etc/profile.d/50-portaudio.sh export PORTAUDIODIR="/opt/portaudio" export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}${PORTAUDIODIR}/lib/pkgconfig" # End /etc/profile.d/50-portaudio.sh source /etc/profile.d/50-portaudio.sh ldconfig
Multilib v18
32Bit
todo
The obvious transformation of the non-multilib commands works. (Author could not log in at the time.) Write this up some day.
N32
todo
64bit
todo
The obvious transformation of the non-multilib commands works. (Author could not log in at the time.) Write this up some day.
Multilib v19
32Bit
If you already have v18 installed, the sharable library was probably installed without versioning. (That's what the v18 instructions here do.) To prevent conflict between the two versions, add library versioning.
mv /usr/lib/libportaudio.so /usr/lib/libportaudio.so.0.0.18 && pushd /usr/lib && ln -s libportaudio.so.0.0.18 libportaudio.so && popd
Now, the two versions of the library could co-exist in the same directory, but there are also two different incompatible versions of the header file, which would likely cause problems with future builds of other packages that need one or the other of these versions. So we had better install v19 in /opt.
Compile the package:
./configure --prefix=/opt/portaudio && make
Install the package:
make install
N32
TO DO
64Bit
If you already have v18 installed, the sharable library was probably installed without versioning. (That's what the v18 instructions here do.) To prevent conflict between the two versions, add library versioning.
mv /usr/lib64/libportaudio.so /usr/lib64/libportaudio.so.0.0.18 && pushd /usr/lib64 && ln -s libportaudio.so.0.0.18 libportaudio.so && popd
Now, the two versions of the library could co-exist in the same directory, but there are also two different incompatible versions of the header file, which would likely cause problems with future builds of other packages that need one or the other of these versions. So we had better install v19 in /opt.
Compile the package:
./configure --prefix=/opt/portaudio --libdir=/opt/portaudio/lib64 && make
Install the package:
make install && cat > /etc/ld.so.conf < "EOF" # Begin portaudio addition to /etc/ld.so.conf /opt/portaudio/lib /opt/portaudio/lib32 /opt/portaudio/lib64 # End portaudio addition EOF cat > /etc/profile.d/50-portaudio.sh < "EOF" # Begin /etc/profile.d/50-portaudio.sh export PORTAUDIODIR="/opt/portaudio" export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}${PORTAUDIODIR}/lib/pkgconfig" export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}${PORTAUDIODIR}/lib32/pkgconfig" export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}${PORTAUDIODIR}/lib64/pkgconfig"
# End /etc/profile.d/50-portaudio.sh source /etc/profile.d/50-portaudio.sh ldconfig
Contents
Installed Libraries: | libportaudio.so |
---|