webkit编译详解.doc

上传人:壹****1 文档编号:563933083 上传时间:2023-02-23 格式:DOC 页数:19 大小:88.51KB
返回 下载 相关 举报
webkit编译详解.doc_第1页
第1页 / 共19页
webkit编译详解.doc_第2页
第2页 / 共19页
webkit编译详解.doc_第3页
第3页 / 共19页
webkit编译详解.doc_第4页
第4页 / 共19页
webkit编译详解.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《webkit编译详解.doc》由会员分享,可在线阅读,更多相关《webkit编译详解.doc(19页珍藏版)》请在金锄头文库上搜索。

1、二Webkit编译详解1.依赖库及介绍libicu-dev ICU是一个成熟,广泛使用的一套为C / C + +和Java库提供Unicode的全球化支持软件。ICU广泛的应用在便携式设备上,并给出相同的结果在所有平台之间的C / C + +和Java软件。libxslt-dev XSLT的英文标准名称为eXtensible Stylesheet Language Transformation。根据W3C的规范说明书(http:/www.w3.org/TR/xslt),最早设计XSLT的用意是帮助XML文档(document)转换为其它文档。但是随着发展,XSLT已不仅仅用于将XML转换为HT

2、ML或其它文本格式,更全面的定义应该是: XSLT是一种用来转换XML文档结构的语言。libcurl-dev cURL是一个利用URL语法的文件传输工具,是基于libcurl的前端命令行工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。 它同样支持HTTPS认证,HTTP POST方法, HTTP PUT方法, FTP上传, kerberos认证, HTTP上传, 代理服务器, cookies, 用户名/密码认证, 下载文件断点续传, 上载文件断点续传, http代理服务器管道( proxy tunnel

3、ing), 甚至它还支持IPv6, socks5代理服务器,通过http代理服务器上传文件到FTP服务器等等,功能十分强大。libsqlite3-dev SQLite 是实现了SQL 92标准的一个大子集的嵌入式数据库.其以在一个库中组合了数据库引擎和接口,能将所有数据存储于单个文件中而著名.功能一定程度上居于MySQL 和PostgreSQL之间.尽管如此,在性能上面,SQLite常常快2-3倍 (甚至更多).这利益于其高度调整了的内部架构,因为它除去了服务器端到客户端和客户端到服务器端的通信.libjpeg62-dev libjpeg 软件包包含 jpeg 库. 这些库使图形文件在联合图象

4、专家组的标准上压缩. 它是一种有损耗的压缩算法.libpng12-dev libpng 软件包包含 libpng 库.这些库被其他程序用于读写png文件gperf gperf是一个用C+编写的完美的hash函数生成器.它通过一个完美的hash函数F转换一个含有N元素的用户特定关键字集合到集合W. F唯一映射关键字到W的0.K范围,其中K=N如果K=N那么F就是最小化的完美hash函数.gperf生成一个0.K元素的静态查找表和一对C函数.这些函数决定一个给定的字符串S是否在集合W中,通过只多一次的查找. gperf普遍用于为多个商业编译器,研究型编译器,语言处理工具的词法分析器生成一个关键字识

5、别器.这些编译器包括GNU C, GNU C+, GNU Pascal, GNU Modula 3, 和GNU indent.完整的gperfC+源代码可以通过匿名ftpics.uci.edu 和 ftp.santafe.edu得到.gperf已经随GNU libg+一起发布好几年了flex 快速词法分析器发生器Bison GNU项目分析器2.X11+Gtk+WebKit交叉编译详解编译列表:Name Version libpng 1.2.10 pkg-config 0.23 gperf 3.0.3 Tiff 3.8.2 libjpeg 6b freetype 2.1.10 libxml2 2

6、.6.30 fontconfig 2.4.2 XFree86 4.7.0 glib 2.18.0 atk 1.20.0 cairo 1.2.0 pango 1.20.0 gtk+ 2.14.0 ICU 4c-3_6 xslt 1.1.22 curl 7.19.2 sqlite 3.5.6 WebKit r29711 The cross source:export ARCH=armexport CC= iwmmxt_le-gccexport CXX=iwmmxt_le-gccexport BUILD_ROOT=/uplatformexport PATH=/opt/montavista/cee/d

7、evkit/arm/iwmmxt_le/bin/:/opt/montavista/cee/host/bin/:$BUILD_ROOT/usr/bin:$PATHexport PKG_CONFIG_PATH=$BUILD_ROOT/usr/lib/pkgconfig:$BUILD_ROOT/usr/X11R6/lib/pkgconfig说明:CC是c的编译器选项,CXX是C+的编译器选项。BUILD_ROOT是要build的路径。PKG_CONFIG_PATH,现在大多数软件,都是通过pkg-config来检查依赖关系的,所以要把两者都加到PKG_CONFIG_PATH环境变量中Libpnget

8、ho ac_cv_fnuc_malloc_O_nonull=yes $ARCH-linux.cache./configure -prefix=/$BUILD_ROOT/usr -host=$ARCH-linuxmake &make installpkg-config./configuremake &make install应为需要较高级的版本的pkg-config才能编译glib和gtk,如果编译机上的版本够高就不需要在升级pkg-config了Gperf./configuremake &make install企业版的/usr/bin下有,可以直接使用,如果没有需要编译一个Tiff./con

9、figure -prefix=/$BUILD_ROOT/usr -host=$ARCH-linuxmake &make install字体读取文件库Libjpeg./configure -prefix=/$BUILD_ROOT/usr -host=$ARCH-linuxmake &make installfreetype./configure -prefix=/$BUILD_ROOT/usr -host=$ARCH-linuxmake &make installlibxml2./configure -prefix=/$BUILD_ROOT/usr -host=$ARCH-linuxmake &

10、make installfontconfig./configure -prefix=/$BUILD_ROOT/usr -host=$ARCH-linuxmake &make installXFree86./configure -prefix=/$BUILD_ROOT/usr -host=$ARCH-linux由于x11 的需求不同,在配置选项的时候要加特定的参数。所以需要知己configure h看所需要的选项Glibac_cv_type_long_long=yesglib_cv_long_long_format=llglib_cv_stack_grows=noglib_cv_uscore=n

11、oac_cv_func_posix_getpwuid_r=yes./configure -host=arm-linux -prefix=$BUILD_ROOT/usrmake &make install以上选项加入到configure里再configure,应为我们arm上裁剪的是2.4内核,所以有些是不支持的,需要屏蔽Atkexport CFLAGS=pkg-config -cflags glib-2.0 -I$BUILD_ROOT/usr/include export LDFLAGS=-L$BUILD_ROOT/usr/lib,-rpath=$BUILD_ROOT/usr/lib ./co

12、nfigure -host=arm-linux -prefix=$BUILD_ROOT/usrmake &make install因为atk是依赖glib的,所以需要指定glibCairoExport CFLAGS=-I$BUILD_ROOT/usr/include -I$BUILD_ROOT/usr/X11R6/include Export LDFLAGS=-L$BUILD_ROOT/usr/lib -L$BUILD_ROOT/usr/X11R6/lib -lXft -lfreetype -lfontconfig -lXrender -lexpat -lXext -lX11 ./config

13、ure -host=arm-linux -disable-nls -with-x -prefix=$BUILD_ROOT/usr -x-includes=$BUILD_ROOT/usr/X11R6/include -x-libraries=$BUILD_ROOT/usr/X11R6/libmake &make install由于我们编译的是1.2.0所有不需要编译pixmanPangoexport FREETYPE_CONFIG=$BUILD_ROOT/usr/bin/freetype-config ExportLDFLAGS=-L$BUILD_ROOT/usr/lib -Wl,-rpath=

14、$BUILD_ROOT/usr/lib export CFLAGS=pkg-config -cflags glib-2.0 cairo -I$BUILD_ROOT/usr/include/freetype2./configure -host=arm-linux -disable-nls -with-x -prefix=$BUILD_ROOT/usr -x-includes=$BUILD_ROOT/usr/X11R6/include -x-libraries=$BUILD_ROOT/usr/X11R6/libmake &make install因为pango依赖GLib, freetype,cairo,x11,所以要指明其连接gtk+首先屏蔽config.h里面的HAVE_XFIXES 0HAVE_CUPS_API_1_2再configureCFLAGS=pkg-config -cflags pango pangoft2 pangocairo -I$BUILD_ROOT/usr/include -I$BUILD_ROOT/usr/inc

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号