【小a原创】D1编译DLNA环境~

编译DLNA需要安装四个库,
libglib2.0-dev ,bison ,flex ,intltool
统统apt-get~
sudo apt-get install libglib2.0-dev
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install intltool

出现问题与解决的记录:

1、编译glib时出现gettext问题:
a、现象:
checking for msgfmt… no
configure: error:
*** You must have either have gettext support in your C library, or use the
*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html

make[2]: *** [glib-2.32.1/Makefile] Error 1
make[2]: Leaving directory /home/longjc/kh/DLNA_targetfs/dlna/source/glib' make[1]: *** [all] Error 1 make[1]: Leaving directory/home/longjc/kh/DLNA_targetfs/dlna/source’
make: *** [source] Error 2

b、解决办法,当时是直接将DLNA_targetfs\dlna\source\glib\glib-2.32.1下面的configure修改

if test “$gt_cv_have_gettext” != “yes” ; then
as_fn_error $? "
*** You must have either have gettext support in your C library, or use the
*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html
" “$LINENO” 5
fi

改成:(仅仅是用于记录,不需要按照下面修改)
if test “$gt_cv_have_gettext” != “yes” ; then
echo $? "
*** You must have either have gettext support in your C library, or use the
*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html
" “$LINENO” 5
fi
注意:这样修改后,后面还会出现gettext的编译错误,出现这个问题时直接安装intltool就好了,不需要我上面那样修改。

2、编译gstreamer时出现Could not find bison:
a、现象:
checking how to hardcode library paths into programs… immediate
configure: working c++ compiler found: yes
checking for perl… /usr/bin/perl
checking for bison… no
configure: error: Could not find bison
make[2]: *** [gstreamer-0.10.36/Makefile] 错误 1
make[2]:正在离开目录 /home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source/gstreamer' make[1]: *** [all] 错误 1 make[1]:正在离开目录/home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source’
make: *** [source] 错误 2

b、解决办法: sudo apt-get install bison

3、编译gstreamer时出现Could not find flex:
a、现象:
checking how to hardcode library paths into programs… immediate
configure: working c++ compiler found: yes
checking for perl… /usr/bin/perl
checking for bison… /usr/bin/bison
checking bison version 2.4.1 >= 1.875… yes
checking for flex… no
configure: error: Could not find flex
make[2]: *** [gstreamer-0.10.36/Makefile] 错误 1
make[2]:正在离开目录 /home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source/gstreamer' make[1]: *** [all] 错误 1 make[1]:正在离开目录/home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source’
make: *** [source] 错误 2
anyka@anyka-laptop:~/longjiacheng/DLNA/DLNA_targetfs/dlna$

b、解决办法:sudo apt-get install flex

4、编译rygel时遇到error: Your intltool is too old
a、现象:
checking whether NLS is requested… yes
checking for intltool >= 0.40.0… ./configure: line 15446: intltool-update: command not found
found
configure: error: Your intltool is too old. You need intltool 0.40.0 or later.
make[2]: *** [rygel-0.14.0/Makefile] 错误 1
make[2]:正在离开目录 /home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source/rygel' make[1]: *** [all] 错误 1 make[1]:正在离开目录/home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source’
make: *** [source] 错误 2
anyka@anyka-laptop:~/longjiacheng/DLNA/DLNA_targetfs/dlna$

b、解决办法:当时是直接下载intltool-0.40.6.tar.gz安装
wget http://ftp.gnome.org/pub/gnome/sources/intltool/0.40/intltool-0.40.6.tar.gz
tar zxvf intltool-0.40.6.tar.gz
cd intltool-0.40.6
./configure
make && make install

5、编译rygel时遇到GNU gettext tools not found
a、现象:
checking for msgmerge… no
checking for msgfmt… (cached) no
checking for gmsgfmt… no
configure: error: GNU gettext tools not found; required for intltool
make[2]: *** [rygel-0.14.0/Makefile] 错误 1
make[2]:正在离开目录 /home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source/rygel' make[1]: *** [all] 错误 1 make[1]:正在离开目录/home/anyka/longjiacheng/DLNA/DLNA_targetfs/dlna/source’
make: *** [source] 错误 2
anyka@anyka-laptop:~/longjiacheng/DLNA/DLNA_targetfs/dlna$

b、解决办法:sudo apt-get install intltool

谢谢分享学习一下

支持~不知道D1带的起不~