编译前,查看README,知道需要先编译安装如下几个lib,我都装到了/opt/buildroot-gcc342
- libexif
- libjpeg
- libid3tag
- libFLAC
- libvorbis
- libsqlite3
- libavformat (the ffmpeg libraries)
再然后是编译的那三个步骤,
./configure CC=mipsel-linux-gcc --host=mipsel-linux --prefix=/opt/buildroot-gcc342 LIBS="-lpthread -liconv"
make
make install
./configure时没有报错,但查看config.log里面有错误信息(需要连接lpthread和liconv)
make的时候,出现
undefined reference to `exif_loader_new'
undefined reference to `exif_loader_write_file'
undefined reference to `exif_loader_get_data'
......
undefined reference to `exif_entry_get_value'
基本可以判断是libexif的没有找到的问题。。然后去/opt/buildroot-gcc342/lib中找,找到了libexif.a libexif.so等,说明应该就是库没有链接
打开Makefile,找到minidlnad_LDADD和testupnpdescgen_LDADD
minidlnad_LDADD = \
-ljpeg \
-lid3tag \
-lsqlite3 \
-lavformat \
-lavutil \
\
\
\
-lFLAC $(flacoggflag) $(vorbisflag)
testupnpdescgen_LDADD = \
-ljpeg \
-lid3tag \
-lsqlite3 \
-lavformat \
-lavutil \
\
-lFLAC $(flacoggflag) $(vorbisflag)
都在后面加一行 -lexif
minidlnad_LDADD = \
-ljpeg \
-lid3tag \
-lsqlite3 \
-lavformat \
-lavutil \
\
\
\
-lFLAC $(flacoggflag) $(vorbisflag) \
-lexif
testupnpdescgen_LDADD = \
-ljpeg \
-lid3tag \
-lsqlite3 \
-lavformat \
-lavutil \
\
-lFLAC $(flacoggflag) $(vorbisflag) \
-lexif
编译通过,
烧到板子上试试看。。