|
|
今天我编译esound的时候,没有注意到其依赖于audiofile,以致出错。编译好audiofile后,回来重新编译esound,仍然有以下错误:
(cd .libs && rm -f libesddsp.so && ln -s libesddsp.so.0.2.29 libesddsp.so)
ar cru .libs/libesddsp.a esddsp.o
ranlib .libs/libesddsp.a
creating libesddsp.la
(cd .libs && rm -f libesddsp.la && ln -s ../libesddsp.la libesddsp.la)
gcc -DHAVE_CONFIG_H -I. -I. -I. -DSYSCONFDIR=\"/etc\" -DSERVERDIR=\"/usr/bin\" -g -O2 -c esdcat.c
/bin/sh ./libtool --mode=link gcc -g -O2 -o esdcat esdcat.o libesd.la
gcc -g -O2 -o .libs/esdcat esdcat.o ./.libs/libesd.so
./.libs/libesd.so: undefined reference to `afGetSampleFormat'
./.libs/libesd.so: undefined reference to `afReadFrames'
./.libs/libesd.so: undefined reference to `afGetChannels'
./.libs/libesd.so: undefined reference to `afCloseFile'
./.libs/libesd.so: undefined reference to `afGetRate'
./.libs/libesd.so: undefined reference to `afGetFrameCount'
./.libs/libesd.so: undefined reference to `afOpenFile'
./.libs/libesd.so: undefined reference to `afGetTrackBytes'
collect2: ld returned 1 exit status
make[2]: *** [esdcat] Error 1
make[2]: Leaving directory `/usr/src/esound-0.2.29'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/esound-0.2.29'
make: *** [all-recursive-am] Error 2
正无奈的时候,决定删除这个目录(我想make clean也是可以的),重新解包、编译,竟然成功了!请问这个“undefined reference to”何解? |
|