GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
-ACLOCAL = ${SHELL} /p/Radio/fdmdv2/missing --run aclocal-1.11
-AMTAR = ${SHELL} /p/Radio/fdmdv2/missing --run tar
-AUTOCONF = ${SHELL} /p/Radio/fdmdv2/missing --run autoconf
-AUTOHEADER = ${SHELL} /p/Radio/fdmdv2/missing --run autoheader
-AUTOMAKE = ${SHELL} /p/Radio/fdmdv2/missing --run automake-1.11
+ACLOCAL = ${SHELL} /home/david/fdmdv2/missing --run aclocal-1.11
+AMTAR = ${SHELL} /home/david/fdmdv2/missing --run tar
+AUTOCONF = ${SHELL} /home/david/fdmdv2/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/david/fdmdv2/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/david/fdmdv2/missing --run automake-1.11
AWK = gawk
CC = gcc
CCDEPMODE = depmode=none
ECHO_N = -n
ECHO_T =
EGREP = /bin/grep -E
-EXEEXT = .exe
+EXEEXT =
GREP = /bin/grep
-INSTALL = /bin/install -c
+INSTALL = /usr/bin/install -c
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL}
LIBOBJS =
LIBS = -lm
LTLIBOBJS =
-MAKEINFO = ${SHELL} /p/Radio/fdmdv2/missing --run makeinfo
+MAKEINFO = ${SHELL} /home/david/fdmdv2/missing --run makeinfo
MKDIR_P = /bin/mkdir -p
OBJEXT = o
PACKAGE = fdmdv2
PACKAGE_VERSION = 0.2
PATH_SEPARATOR = :
SET_MAKE =
-SHELL = /bin/sh
+SHELL = /bin/bash
STRIP =
VERSION = 0.2
-abs_builddir = /p/Radio/fdmdv2
-abs_srcdir = /p/Radio/fdmdv2
-abs_top_builddir = /p/Radio/fdmdv2
-abs_top_srcdir = /p/Radio/fdmdv2
+abs_builddir = /home/david/fdmdv2
+abs_srcdir = /home/david/fdmdv2
+abs_top_builddir = /home/david/fdmdv2
+abs_top_srcdir = /home/david/fdmdv2
ac_ct_CC = gcc
am__include = include
am__leading_dot = .
htmldir = ${docdir}
includedir = ${prefix}/include
infodir = ${datarootdir}/info
-install_sh = ${SHELL} /p/Radio/fdmdv2/install-sh
+install_sh = ${SHELL} /home/david/fdmdv2/install-sh
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
localedir = ${datarootdir}/locale
BUILDING FreeDV for Linux
=========================
-1 FreeDV was developed on Ubuntu 9.1 and 10.04 systems. I installed the
- Ubuntu packages:
+1. FreeDV was developed on Ubuntu 9.1 and 10.04 systems. It has been
+ tested on OSS (Ubuntu 9.1) and ALSA (Ubuntu 10.04) sound systems.
+
+2. A typical ALSA installation (e.g., Ubuntu 10.04) first install the
+ following packages:
libsamplerate, libsamplerate-dev
libsndfile1, libsndfile1-dev
+ libasound, libasound_dev
-2. Some people have also reported needing libasound and libasound_dev (and -lasound in
- the linker line of Makefile.linux)
-
-3. Then build the other libraries below from source. At present the
- way each package is built and installed is not consistent. Some
- are installed with "make install", others are pointed to via
- Makefile variables.
-
-4. You may need to edit the Makefile.linux variables for your system:
-
- WX_GTK_PATH
- CODEC2_PATH
- SOX_LIB_PATH
-
-wxWidgets
----------
-
-1. Download wxWidgets 2.9.4 or later and untar
-
-2. Install GTK development files (e.g. on Ubuntu libgtk2.0-dev)
-
-3. Build the gtk version:
-
- $ cd wxWidgets-2.9.4
- $ mkdir build_gtk
- $ cd build_gtk
- $ ../configure
- $ make
-
-4. You don't actually have to "make install" wxWidgets (unless you
- really want to), it can be used by fdmdv2 out of the directory you
- build it in.
-
-Portaudio
----------
-
-1. Make sure ALSA development support (libasound and headers) is
- present. Portaudio will work with OSS but I found I couldn't
- adjust the mic gain using OSS. On a modern version of Ubuntu the
- ALSA libs can be installed with:
-
- sudo apt-get install libasound-dev
-
- Note I had problems with the ALSA development library on Ubuntu
- 9.10, so used OSS and put up with not being able to adjust the mic
- gain.
-
-2. Download and untar pa_stable_V19
-
-3. Configure with C++ enabled:
-
- $ ./configure --enable-cxx
-
- <snip>:
-
- Configuration summary:
-
- Target ...................... i686-pc-linux-gnu
- C++ bindings ................ yes
- Debug output ................ no
-
- ALSA ........................ yes
- ASIHPI ...................... no
-
- OSS ......................... yes
- JACK ........................ no
-
-4. $ make
-
-5. You can test Portaudio with bin/pa_devs & bin/patest_sine8.
-
-6. I used a "sudo make install", and removed the default Unbuntu
- portaudio libs as they were an earlier version. It's probably
- possible to build fdmdv2 without "make install", by passing
- --prefix to the ./configure stage.
-
-libsox
-------
-
-We use some of the internal sox functions for the equaliser feature.
-
-wget http://sourceforge.net/projects/sox/files/sox/14.4.0/sox-14.4.0.tar.gz/download
-tar xvzf sox-14.4.0.tar.gz
-cd sox-14.4.0
-
-Now we only want to use a few internal functions of sox. This
-configure line mkes sure we don't build in unneeded depednancies:
-
-sox-14.4.0$ ./configure --enable-shared=no --without-id3tag --without-png --disable-gomp --with-oggvorbis=no --with-oss=no --with-flac=no --disable-dl-sndfile
-
-sox-14.4.0$ make
-
-libctb (Communications Toolbox)
--------------------------------
-
-$ wget https://iftools.com/download/ctb/0.16/libctb-0.16.tar.gz
-$ tar xvzf libctb-0.16.tar.gz
-$ cd libctb-0.16/build
-build$ make
-build$ sudo make install
-
-I found the "sudo make DEBUG=0 GPIB=0 install" didn't install the kbhit.h file:
-
-build$ sudo cp ../include/ctb-0.16/kbhit.h /usr/local/include/ctb-0.16
-build$ sudo ldconfig
-
-codec2-dev
-----------
-
-1. See codec2-dev/README. No need to "make install"
-
-fdmdv2
-------
-
-1. svn co https://freetel.svn.sourceforge.net/svnroot/freetel/fdmdv2
+3. If you would like to use OSS rather than ALSA do not install
+ libasound & libasound_dev.
-2. Modify the paths at the top of src/Makefile.linux for wxWidgets and codec2-dev
+4. Makefile.linux will download the libraries you need, configure and
+ build them, then build FreeDV. Makefile.linux will not install
+ any of the libraries you build ob your system.
-3.
cd fdmdv2/src
make -f Makefile.linux
CTB_INC=-I$(CTB)/include
CTB_LIB=$(CTB)/lib/libctb-0.16.a
+# if libasound is available, PortAudio will be using it, so we will
+# need to add it to freedv link line. To test if it is present, we try
+# to link a small C program with -lasound
+
+LIBASOUND=$(shell echo "int main(void) {return 0;}" | gcc -xc - -lasound 2>/dev/null ; if [ $$? -eq 0 ] ; then echo "-lasound" ; fi )
+
# FreeDV ------------------------------------------------
CPP_FLAGS = $(WX_CPPFLAGS) $(PORTAUDIO_INC) $(CODEC2_INC) $(SOX_INC) $(CTB_INC) -I. -g -Wall -O3 -DSVN_REVISION=\"$(SVN_REVISION)\"
-FREEDV_LIBS = $(WX_LIBS) $(PORTAUDIO_LIB) $(CODEC2_LIB) $(SOX_LIB) $(CTB_LIB) -lm -lpthread -lsndfile -lsamplerate -lasound
+FREEDV_LIBS = $(WX_LIBS) $(PORTAUDIO_LIB) $(CODEC2_LIB) $(SOX_LIB) $(CTB_LIB) -lm -lpthread -lsndfile -lsamplerate $(LIBASOUND)
OBJS = topFrame.o \
fdmdv2_main.o \
freedv: $(OBJS)
g++ -o freedv $(OBJS) $(CPP_FLAGS) $(FREEDV_LIBS)
-
+
%.o: %.cpp $(HDRS)
g++ $(CPP_FLAGS) -c $< -o $@