|
List Info
Thread: cygwin build issues
|
|
| cygwin build issues |
  United States |
2007-10-15 11:56:50 |
|
|
1) install cygwin - select from
devel
gcc,,gcc-mingw,libtool1.5,make,pkg-config
from README.VisualStudio
2) Obtain dependencies. At the time of this
writing, portaudio-v19, libogg 1.1.3, speex 1.2beta1, and
libtheora 1.0alpha7 are required. Source for these
dependencies are available here:
In order to build with the
vcproj files provided by iaxclient, these dependent
libraries must be moved to be peer directories to the
iaxclient source directory. They also must have the
following names: libogg, speex, and libtheora. So the
final directory layout would be as follows:
C:...whereeveriaxclient
C:...whereeverportaudio
C:...whereeverlibogg
C:...whereeverspeex
C:...whereeverlibtheora
3)edit
c:...whereeverportaudioconfigure line
21299 from: OTHER_OBJS="src/hostapi/dsound/pa_win_ds.o
src/hostapi/dsound/pa_win_ds_dynlink.o src/os/win/pa_win_hostapis.o
src/os/win/pa_win_util.o"; to:
OTHER_OBJS="src/hostapi/dsound/pa_win_ds.o
src/hostapi/dsound/pa_win_ds_dynlink.o src/os/win/pa_win_hostapis.o
src/os/win/pa_win_util.o";
OTHER_OBJS="$OTHER_OBJS src/os/win/pa_win_waveformat.o"
line 21353
from: OTHER_OBJS="src/hostapi/wmme/pa_win_wmme.o src/os/win/pa_win_hostapis.o
src/os/win/pa_win_util.o"; to:
OTHER_OBJS="src/hostapi/wmme/pa_win_wmme.o src/os/win/pa_win_hostapis.o
src/os/win/pa_win_util.o";
OTHER_OBJS="$OTHER_OBJS src/os/win/pa_win_waveformat.o"
4) start cygwin 5) cd
c:/.../whereever/portaudio
./configure make make
install 6) cd ../libogg
./configure make make
install 7) cd ../speex
./configure make make
install 8) cd ../libtheora ./configure
get a few warnings - don't know if they are
significant
checking for vorbis >= 1.0.1... checking for
Vorbis... no *** Could not run Vorbis test program,
checking why... *** The test program failed to compile or
link. See the file config.log for the *** exact error that
occured. This usually means Vorbis was incorrectly
installed *** or that you have moved Vorbis since it was
installed. checking for sdl-config...
no checking for SDL - version >= 0.11.0...
no *** The sdl-config script installed by SDL could not be
found *** If SDL was installed in PREFIX, make sure
PREFIX/bin is in *** your path, or set the SDL_CONFIG
environment variable to the *** full path to
sdl-config. configure: WARNING: *** Unable to find SDL --
Not compiling example players *** checking sys/soundcard.h
usability... yes checking sys/soundcard.h presence...
yes checking for sys/soundcard.h...
yes configure: Vorbis missing, cannot build example
encoder
make
get a warning - don't know if it's significant
libtool: link: warning: undefined symbols not allowed in
i686-pc-cygwin shared l ibraries ar
cru .libs/libtheora.a libtheora_la-blockmap.o libtheora_la-comment.o
libtheo ra_la-dct.o libtheora_la-dct_decode.o
libtheora_la-decode.o libtheora_la-frarray .o
libtheora_la-frinit.o libtheora_la-huffman.o libtheora_la-idct.o
libtheora_la -mcomp.o libtheora_la-misc_common.o
libtheora_la-pb.o libtheora_la-pp.o libtheor a_la-quant.o
libtheora_la-reconstruct.o libtheora_la-scan.o
libtheora_la-topleve l.o libtheora_la-cpu.o
libtheora_la-dsp.o libtheora_la-dsp_mmx.o libtheora_la-ds
p_mmxext.o libtheora_la-recon_mmx.o libtheora_la-fdct_mmx.o
libtheora_la-dct_enc ode.o libtheora_la-encode.o
libtheora_la-encoder_toplevel.o ranlib
.libs/libtheora.a creating
libtheora.la (cd .libs && rm -f libtheora.la
&& ln -s ../libtheora.la libtheora.la) make[2]:
Leaving directory `/cygdrive/c/iaxclient/libtheora/lib'
make install
9) need to copy /usr/local/lib to /lib need to
copy /usr/local/include to /usr/include so that iaxclient
configure can find dependcies
10)cd ../iaxclient
./configure make
get following errors
make all-recursive make[1]:
Entering directory `/cygdrive/c/iaxclient/iaxclient'
Making all in lib make[2]: Entering directory
`/cygdrive/c/iaxclient/iaxclient/lib' depbase=`echo
winfuncs.lo | sed 's|[^/]*$|.deps/&|;s|.lo$||'`;
if
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
-I . -I.. -I./portmixer/px_common
-I/usr/local/include
-I/usr/local/include -I../lib/libiax2/src -DLIBIAX
-mthreads -I/usr/local/include -Wall -Wextra
-W no-unused-parameter -Wpointer-arith
-DLIBVER='"2.0.0"' -g -O2 -MT winfuncs.lo - MD -MP
-MF "$depbase.Tpo" -c -o winfuncs.lo winfuncs.c;
then mv
-f "$depbase.Tpo" "$depbase.Plo"; else rm -f "$depbase.Tpo";
exi t 1; fi mkdir
.libs gcc -DHAVE_CONFIG_H -I. -I. -I..
-I./portmixer/px_common -I/usr/local/include -
I/usr/local/include -I../lib/libiax2/src -DLIBIAX -mthreads
-I/usr/local/include -Wall -Wextra
-Wno-unused-parameter -Wpointer-arith -DLIBVER="2.0.0" -g -O2
- MT winfuncs.lo -MD -MP -MF .deps/winfuncs.Tpo -c
winfuncs.c -DPIC -o .libs/winf
uncs.o In file included from
winfuncs.c:15: iaxclient_lib.h:35: warning: "struct
timeval" declared inside parameter list
iaxclient_lib.h:35: warning: its scope is only this definition or declaration,
w hich is probably not what you want
In file included from
iaxclient_lib.h:36,
from winfuncs.c:15:
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api/winsock.h:82:2:
war ning: #warning "fd_set and associated macros have been
defined in sys/types. This can cause runtime
problems with W32 sockets" winfuncs.c: In function
`gettimeofday': winfuncs.c:41: error: storage size of
'curSysTime' isn't known winfuncs.c:43: warning: implicit
declaration of function `_ftime' winfuncs.c:41: warning:
unused variable `curSysTime' make[2]: *** [winfuncs.lo]
Error 1 make[2]: Leaving directory
`/cygdrive/c/iaxclient/iaxclient/lib' make[1]: ***
[all-recursive] Error 1 make[1]: Leaving directory
`/cygdrive/c/iaxclient/iaxclient' make: *** [all] Error 2
11)with a fresh copy of iaxclient tired
CXX="g++ -mno-cygwin" CC="gcc -mno-cygwin" ./configure
make
got following errors
$ make make
all-recursive make[1]: Entering directory
`/cygdrive/c/iaxclient/iaxclient' Making all in
lib make[2]: Entering directory
`/cygdrive/c/iaxclient/iaxclient/lib' depbase=`echo
winfuncs.lo | sed 's|[^/]*$|.deps/&|;s|.lo$||'`;
if
/bin/sh ../libtool --tag=CC --mode=compile gcc -mno-cygwin
-DHAVE_CON FIG_H -I. -I. -I..
-I./portmixer/px_common -I/usr/local/include
-I/usr/loc al/include -I../lib/libiax2/src
-DLIBIAX -mthreads -I/usr/local/include -Wal l
-Wextra -Wno-unused-parameter -Wpointer-arith -DLIBVER='"2.0.0"' -g -O2
-MT w infuncs.lo -MD -MP -MF "$depbase.Tpo" -c -o
winfuncs.lo winfuncs.c;
then mv
-f "$depbase.Tpo" "$depbase.Plo"; else rm -f "$depbase.Tpo";
exi t 1; fi mkdir
.libs gcc -mno-cygwin -DHAVE_CONFIG_H -I. -I. -I..
-I./portmixer/px_common -I/usr/loc al/include
-I/usr/local/include -I../lib/libiax2/src -DLIBIAX -mthreads
-I/usr/l ocal/include -Wall -Wextra -Wno-unused-parameter
-Wpointer-arith -DLIBVER="2.0. 0" -g -O2 -MT winfuncs.lo
-MD -MP -MF .deps/winfuncs.Tpo -c winfuncs.c -DPIC -
o .libs/winfuncs.o In file included from
iaxclient_lib.h:28,
from winfuncs.c:15: ../config.h:117:1: warning: "WIN32"
redefined <command line>:4:1: warning: this is the
location of the previous definition In file included from
winfuncs.c:15: iaxclient_lib.h:35: warning: "struct
timeval" declared inside parameter list
iaxclient_lib.h:35: warning: its scope is only this definition or declaration,
w hich is probably not what you
want gcc -mno-cygwin -DHAVE_CONFIG_H -I. -I. -I..
-I./portmixer/px_common -I/usr/loc al/include
-I/usr/local/include -I../lib/libiax2/src -DLIBIAX -mthreads
-I/usr/l ocal/include -Wall -Wextra -Wno-unused-parameter
-Wpointer-arith -DLIBVER="2.0. 0" -g -O2 -MT winfuncs.lo
-MD -MP -MF .deps/winfuncs.Tpo -c winfuncs.c -o winfu
ncs.o >/dev/null 2>&1 depbase=`echo
portmixer/px_win_wmme/px_win_wmme.lo | sed
's|[^/]*$|.deps/&|;s|. lo$||'`;
if
/bin/sh ../libtool --tag=CC --mode=compile gcc -mno-cygwin
-DHAVE_CON FIG_H -I. -I. -I..
-I./portmixer/px_common -I/usr/local/include
-I/usr/loc al/include -I../lib/libiax2/src
-DLIBIAX -mthreads -I/usr/local/include -Wal l
-Wextra -Wno-unused-parameter -Wpointer-arith -DLIBVER='"2.0.0"' -g -O2
-MT p ortmixer/px_win_wmme/px_win_wmme.lo -MD -MP -MF
"$depbase.Tpo" -c -o portmixer/p x_win_wmme/px_win_wmme.lo
portmixer/px_win_wmme/px_win_wmme.c;
then mv
-f "$depbase.Tpo" "$depbase.Plo"; else rm -f "$depbase.Tpo";
exi | |