九鼎创展论坛中文版English
登录 | 立即注册 设为首页收藏本站 切换到宽版
查看: 5579|回复: 0
打印 上一主题 下一主题

gnash编译

[复制链接]
跳转到指定楼层
楼主
发表于 2011-12-1 08:26:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MX258平台:

第一步:下载并编译zlib [OK]

下载地址:http://www.dnaphp.com/downloads/server/linux/30-zlib-1-2-5-tar
版本:zlib-1.2.5.tar.gz

CC=arm-none-linux-gnueabi-gcc ./configure --prefix=/opt/local --shared
make
make install

编译成功,在/opt/local下将会生成以下两个文件:
/opt/local/include/zlib.h /opt/local/include/zconf.h


第二步:下载并编译libiconv-1.13 [OK]

./configure --prefix=/opt/local --host=arm-none-linux-gnueabi
make
make install

第三步:下载并编译安装gettext-0.17 [OK]

下载地址:http://download.chinaunix.net/do ... amp;ResourceID=3687
版本:gettext-0.16.1.tar.gz

./configure  --host=arm-none-linux-gnueabi --prefix=/opt/local
make
make install

编译成功,在/opt/local下生成四个目录:bin  include  lib  share


第四步:下载并编译glib2.21.0 [OK]

下载地址:www.pudn.com
版本:glib-2.22.2.zip

chmod 777 configure
NM=nm CC=arm-none-linux-gnueabi-gcc ./configure --build=i686-linux --host=arm-none-linux-gnueabi --prefix=/opt/local glib_cv_stack_grows=no glib_cv_uscore=no ac_cv_func_posix_getpwuid_r=yes ac_cv_func_posix_getgrgid_r=yes ac_cv_lib_rt_clock_gettime=no glib_cv_monotonic_clock=yes --libdir=/opt/local/lib --includedir=/opt/local/include
chmod 777 mkinstalldirs
make
make install

第五步:下载并编译libxml2-2.7.3 [OK]

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local
make
make install

第六步:安装check-0.9.6 [OK]

下载地址:http://download.chinaunix.net/do ... amp;ResourceID=1364
版本:check-0.9.6.tar.gz

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local
make
make install

第七步:安装SDL-1.2.13 [OK]

下载地址:http://download.chinaunix.net/do ... amp;ResourceID=9305
版本:SDL-1.2.13.tar.gz

./configure  --host=arm-none-linux-gnueabi --prefix=/opt/local --enable-video-x11=no --enable-video-photon=no --enable-video-carbon=no --enable-video-cocoa=no --enable-video-directfb=no --enable-video-ps2gs=no --enable-video-svga=no --enable-video-vgl=no --enable-video-wscons=no --enable-video-xbios=no --enable-video-gem=no --enable-video-opengl=no --enable-osmesa-shared=no  CFLAGS="-I/opt/local/include -I/opt/local/include/glib-2.0" LDFLAGS=-L/opt/local/lib --enable-esd=no --enable-pulseaudio=no --enable-arts=no --enable-nas=no --enable-diskaudio=no --enable-ipod=no --enable-altivec=no --enable-mintaudio=no --enable-esd-shared=no --enable-oss=no --enable-alsa=no
make
make install

第八步:安装libpng-1.2.35 [OK]

下载地址:http://sourceforge.net/projects/ ... oad?use_mirror=nchc
版本:libpng-1.2.35.tar.bz2

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local CFLAGS="-I/opt/local/include"  CPPFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"
make
make install

第九步:安装jpegsrc.v6b.tar.gz [OK]

./configure --prefix=/opt/local --enable-shared --enable-static
然后修改Makefile的gcc ,ar,ranlib,全改为arm-none-linux-gnueabi-*
在/opt/local目录新建目录:
mkdir -p man/man1
make
make install

如果事先没有建指定的目录,在make install时就会提示一些无法创建的错误,比如:
root@lqm:/opt/program/tools/jpeg-6b# make install
/usr/bin/install -c -m 644 jconfig.h /usr/local/arm/3.4.1/arm-linux/include/jconfig.h
/usr/bin/install: 无法创建普通文件“/usr/local/arm/3.4.1/arm-linux/include/jconfig.h”: 没有那个文件或目录
make: *** [install-headers] 错误 1

第十步:安装giflib-4.1.6 [OK]

下载地址:http://sourceforge.net/projects/ ... oad?use_mirror=nchc
版本:giflib-4.1.6.tar.bz2

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local
make
make install

第十一步:安装boost1.39.0 [OK]

下载地址:http://sourceforge.net/projects/ ... oad?use_mirror=nchc
版本:boost_1_39_0.tar.gz

A: 解压boost_1_39_0.tar.gz
B: cd boost_1_39_0
C: cp tools/build/v2/user-config.jam  ./
D: 修改user-config.jam  line 46 :
  # using gcc : 3.2 : g++-3.2 ;
  using gcc :  : arm-none-linux-gnueabi-gcc ;
E: bjam  --user-config=user-config.jam //编译整个boost

    提示没有安装bjam,
    apt-get install bjam

F: bjam  install --prefix=/opt/local/boost --user-config=user-config.jam


有问题?
bjam  install --prefix=/opt/local/boost --user-config=user-config.jam --toolset=gcc

第十二步:安装freetype-2.3.9 [OK]

下载地址:http://d.download.csdn.net/down/2055761/newticigam
版本:freetype-2.3.9.tar.bz2

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local  CFLAGS=-I/opt/local/include CXXFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib
make
make install

第十三步:安装agg-2.5 [OK]

下载地址:http://ishare.iask.sina.com.cn/f/15007707.html
版本: agg-2.5.tar.gz

尝试以下方法:
chmod +x autogen.sh
./autogen.sh
./configure --host=arm-none-linux-gnueabi --prefix=/opt/local --with-sdl-prefix=/opt/local --with-x=no  CFLAGS=-I/opt/local/include CXXFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib --enable-platform=SDL --enable-examples=no
make
make install
有问题,提示如下错误:
root@lqm:/opt/program/tools/agg-2.5# ./autogen.sh
./autogen.sh: line 6: aclocal:找不到命令
./autogen.sh: line 9: autoheader:找不到命令
./autogen.sh: line 12: autoconf:找不到命令
安装如下软件:
apt-get install automake
再./autogen.sh

再尝试下面的方法:
修改Makefile.in.Linux:

AGGLIBS= -lagg -lSDL
AGGCXXFLAGS = -O3 -I/opt/gnash/include/SDL -L/opt/gnash/lib
CXX = arm-linux-g++
C = arm-linux-gcc
#CXX = icc
LIB = arm-linux-ar cr

.PHONY : clean

make

第十四步:安装gstreamer-0.10.23 [OK]

下载地址:http://ftp.acc.umu.se/pub/gnome/sources/gstreamer/0.10/
版本:gstreamer-0.10.23.tar.bz2

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local --with-sdl-prefix=/opt/local --with-x=no  CFLAGS=-I/opt/local/include CXXFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib --enable-platform=SDL --enable-examples=no --with-pkg-config-path=/opt/local/lib/pkgconfig
make
make install

第十五步:安装fontconfig-2.6.0 [OK]

下载地址:http://www.pudn.com/downloads230 ... /detail1083608.html
版本:fontconfig-2.7.3.tar.gz

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local CFLAGS=-I/opt/local/include CXXFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib --with-arch=arm
make
make install

第十六步:安装curl-7.19.5 [OK]

下载地址:http://www.hackchina.com/dlpre.php?id=162075
版本:curl-7.19.5.tar.gz

./configure --host=arm-none-linux-gnueabi --prefix=/opt/local CFLAGS=-I/opt/local/include CXXFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib
make
make install

第十七步:安装libutf8-0.8.1 (可以不用?)

第十八步:安装gnash0.8.5 (必须)
版本:gnash-0.8.5.tar.bz2

./configure --host=arm-none-linux-gnueabi --enable-gui=fb --prefix=/opt/local --libdir=/opt/local/lib --includedir=/opt/local/include --with-jpeg-lib=/opt/local/lib --with-jpeg-incl=/opt/local/include --with-gif-incl=/opt/local/include --with-gif-lib=/opt/local/lib --with-gstreamer-lib=/opt/local/lib --with-gstreamer-incl=/opt/local/include/gstreamer-0.10 --with-sdl-lib=/opt/local/lib --with-sdl-incl=/opt/local/include/SDL --with-boost-incl=/opt/local/boost/include --with-boost-lib=/opt/local/boost/lib --with-agg-incl=/opt/local/include/agg2 --with-agg-lib=/opt/local/lib --with-png-incl=/opt/local/include --with-png-lib=/opt/local/lib CFLAGS="-O3 -D__GLIBC__ -I/opt/local/lib/glib-2.0/include -I/opt/local/include/glib-2.0 -I/opt/local/include -I/opt/local/include/libxml2" CXXFLAGS="-O3 -D__GLIBC__ -I/opt/local/lib/glib-2.0/include -I/opt/local/include/glib-2.0 -I/opt/local/include -I/opt/local/include/libxml2" --with-glib-incl=/opt/local/include/glib-2.0 --with-glib-lib=/opt/local/lib/ --disable-nls --disable-testsuite  --with-z-incl=/opt/local/include  --with-z-lib=/opt/local/lib --with-freetype-incl=/opt/local/include/freetype2 --with-freetype-lib=/opt/local/lib  --with-fontconfig-incl=/opt/local/include --with-fontconfig-lib=/opt/local/lib --with-curl-incl=/opt/local/include --with-curl-lib=/opt/local/lib --enable-debugger


./libbase/Makefile  line323 add: -lcurl
  JPEG_LIBS = -L/home/hzf1/rootfs/root/usr/local/lib -ljpeg -lcurl

$ make
$ make install

如果不加-lcurl,将会有如下错误提示:
/opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/arm-none-linux-gnueabi/lib
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_share_cleanup'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_share_setopt'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_cleanup'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_easy_getinfo'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_easy_setopt'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_init'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_add_handle'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_global_cleanup'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_share_init'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_remove_handle'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_easy_strerror'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_easy_perform'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_easy_init'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_global_init'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_perform'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_slist_free_all'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_fdset'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_slist_append'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_info_read'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_share_strerror'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_easy_cleanup'
/opt/program/tools/gnash/gnash-0.8.5/libbase/.libs/libgnashbase.so: undefined reference to `curl_multi_strerror'
collect2: ld returned 1 exit status
make[2]: *** [gprocessor] 错误 1
make[2]:正在离开目录 `/opt/program/tools/gnash/gnash-0.8.5/utilities'
make[1]: *** [all-recursive] 错误 1
make[1]:正在离开目录 `/opt/program/tools/gnash/gnash-0.8.5'
make: *** [all] 错误 2
root@lqm:/opt/program/tools/gnash/gnash-0.8.5#


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳市九鼎创展科技官方论坛 ( 粤ICP备11028681号-2  

GMT+8, 2024-6-18 02:38 , Processed in 0.017971 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表