Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1611902
  • 博文数量: 245
  • 博客积分: 10378
  • 博客等级: 上将
  • 技术积分: 2571
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-27 08:19
文章分类

全部博文(245)

文章存档

2013年(4)

2012年(8)

2011年(13)

2010年(68)

2009年(152)

分类: LINUX

2009-07-29 14:11:33

     已经对gnash的依赖库作了详细的分析,下边是必须依赖的库:
GIF             Required                                                libungif-dev
libxml2 Required                                                libxml2-dev
PNG             Required                                                libpng12-dev
JPEG            Required                                                libjpeg62-dev
Boost           Required                        1.32 or higher  libboost-thread-d
对于boost, 官方说法是必须包涵的,没有办法去掉。

在可选库中:
可选库:
Gstreamer       Optional                                                libgstreamer0.8-dev  //跟视频播放有关,与FFMPEG
不能同时选择。可选。
FFMPEG  Possibly Required                                       ffmpeg-dev   //跟视频播放有关,与Gstreamer
不能同时选择。可选。
gst-ffmpeg      Possibly Required                                       gstreamer0.8-ffmpeg-dev //选择
Gstreamer作为视频播放时,必须加入
gst-ffmpeg      Possibly Required                                       gstreamer0.8-ffmpeg-dev //选择
Gstreamer作为视频播放时,必须加入
SDL             Possibly Required                                       libsdl1.2-dev
AGG             Possibly Required               2.4 or higher   libagg-dev
OpenGL  Possibly Required                                       libgl1-mesa-dev
FLTK            Possibly Required               2.0 or higher   No distribution packages are
available.
Cairo           Possibly Required                                       libcairo2-dev

来看—enable-renderer=[opengl|cairo|agg],gnash根据不同的选项,可以支持三
种不同类型对图像和音频的渲染方式,通过下边的选项来设置:

--enable-renderer=opengl
--enable-renderer=cairo
--enable-renderer=agg (default) 注: renderer渲染,只能选择一个选项
由于opengl cairo需要图形加速卡支持,所以这里我们只能选择agg, 可以在可选
库中删除Openl   Cairo的支持, 保留AGG.

--enable-media=[GST|ffmpeg], 由于现在浏览器项目不需要对flv的支持,尝
试取出对media的支持,但通过配置编译发现,gnash会编译一个自己的
libgnashsound-0.8.5.so库,
这个库中需要media的支持,而且如果--disable-media,编译是无法通过的,所以
无法出去对media的支持,所以这里必须选择,gnash的配置文件中可选项目为:
--enable-media=GST                      Gstreamer (default)
--enable-media=ffmpeg                 Ffmpeg/SDL
其中默认选择是--enable-media=GST,
这里必须依赖gstreamer0.8-ffmpeg-dev  gst-ffmpeg
如果选用--enable-media=ffmpeg,
就需要依赖SDL  gst-ffmpeg
上边是最为重要的两个配置项,
由于gui我们采用qte,所以需要--enable-gui=qtopia [qt4]


 
如果采用上述的配置, 整个gnash编译需要依赖的库有:
图形库:
        ligjpeg  ligpng libgif libz
Audio decoding support...
 SPEEX_CFLAGS is
 SPEEXDSP_CFLAGS is
 SPEEX_LIBS is -lspeex 
 SPEEXDSP_LIBS is
gui库:
        libqt4  libqtopia
       
其他库:   
       
       
        libxml2   libboost  libglib  libpthread  libfreetype  libcurl
        libsdl[正在查找原因]
          还出现了libX11 -libXinerama  libXext libSM libICE 这些是x11的
库,
而配置gui选用的是qtopia[qt4 qte],正在查找原因。
        
Graphics 支持:
        libagg
正在解决的问题:
1。 如上,在配置中,出现了x11,尽管配置的gui选用qtopia(qt4),但仍然出现
x11,正在查找原因, 
2。 正在确认出现libsdl的原因,可能是Using SDL for sound handling,正在确
认。
3。 配置成 --enable-gui=qtopia  编译成功后,  生成的可执行文件中没有发现
gnashplayer之类的可执行文件,正在查找原因。

已经确认: x11库是不需要的,出现
libX11 -libXinerama  libXext libSM libICE 这些是x11的
库,是confiuge的一些问题,配置脚本无法正确的读取环境变量qtopialib等,
导致x11出现,
在configure脚本中加入
export QTOPIA4_LIBS="/usr/local/Trolltech/QtEmbedded-4.5.0/lib"
export QTOPIA4_CFLAGS="/usr/local/Trolltech/QtEmbedded-4.5.0/include"
在配置信息中就没有出现x11相关库,正在编译,做进一步的验证。
阅读(2812) | 评论(5) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-01-11 16:14:03

最简单的配置是: --enable-gui=sdl --enable-renderer=agg --enable-media=none(不支持flv) --enable-sound=sdl 不需要kde,gtk之类的复杂依赖库。

tastesweet2009-09-29 17:42:36

交叉编译的时候需要很多的库,但编译完成后会声称libgnashxxx.so.xx, 移植到嵌入式设备只需要编译好的这些libgnashxx.so.xx就可以了,存放这些库采用默认方式,可以放在/usr/lib /usr/local/lib下。

chinaunix网友2009-09-27 16:25:40

把生成的player移植到嵌入式系统上,这些库都要弄上去吗?假如是只编译源码中的plugin,编译出来是libgnashplugin.so,如果要把该插件移植到嵌入式设备的浏览器上,怎么存放这些库

tastesweet2009-08-14 23:06:01

我用的是0.8.5, 正在编译它依赖的其他库

chinaunix网友2009-08-14 16:49:39

我看了gnash的user manual,里边说的--enable-gui根本没有qtopia,只有kde,现在最新的gnash是0.8.5,请问你用的是哪个gnash?