导航:首页 > 操作系统 > linux编译webkit

linux编译webkit

发布时间:2022-09-14 17:28:53

linux 怎样搭建qtwebkit使用的gstreamer

花了一天事件, 终于编译出了支持gstreamer的qtwebkit, 可以开始html5 的<video><audio>之旅了。
1. 编译libxml2
下载libxml2-sources-2.7.6.tar.gz
解包后在当前目录下编写如下编译脚本:(当然,不用脚本也行,你可以直接执行)
CC=arm-none-linux-gnueabi-gcc ./configure --build=i686-linux --host=arm-none-linux --prefix=/home/work/dist --without-python
make && make install

2. 编译zlib, 这个太common,我不啰嗦了, glib-2.0要依赖的。

3. 编译glib-2.0
下载glib-2.24.2.tar.bz2, 解包, 这个版本的依赖库很少, 竟然只需要zlib。
老版本需要的libconv, gettext等均不需要了。
同样, 编写编译脚本:
CC=arm-none-linux-gnueabi-gcc ./configure --build=i686-linux --host=arm-none-linux \
--prefix=/home/work/dist \
CFLAGS="-I/home/work/dist/include -L/home/work/dist/lib" \
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
make && make install

4. 编译gstreamer
下载gstreamer-0.10.35.tar.gz, 这个是0.10版本里面最新的了。
编译脚本:
CC=arm-none-linux-gnueabi-gcc PKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig ./configure --build=i686-linux --host=arm-none-linux \
--prefix=/home/work/dist CFLAGS=-I/home/work/dist/include --disable-registry --disable-loadsave --disable-gtk-doc \
ac_cv_func_register_printf_function=no --disable-tests --disable-valgrind --disable-debug --disable-gst-debug

make && make install

5. 编译gst plugins base
下载gst-plugins-base-0.10.35.tar.gz。
编译脚本:
CC=arm-none-linux-gnueabi-gcc PKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig ./configure --build=i686-linux --host=arm-none-linux \
--prefix=/home/work/dist CFLAGS=-I/home/work/dist/include --disable-valgrind --disable-x --disable-gnome_vfs --disable-alsa --disable-ogg --disable-pango --disable-theora --disable-vorbis --disable-examples

make && make install

好了, 万事具备, 只欠东风了。接下来开始编译Qt
Qt的配置文件很复杂, 我就不写出来了, 就是要注意这三点:
1. 在Qt 的configure 时加上-force-pkg-config, 否则会在WebCore的feature.pri中检查时报"Disabling video e the lack of GLib/Gio/GStreamer.",
也就是说会不支持video.
具体可以看这个pri片段:

!contains(QT_CONFIG, no-pkg-config):system(pkg-config --exists glib-2.0 gio-2.0 gstreamer-0.10): {
DEFINES -= ENABLE_VIDEO=0
DEFINES += ENABLE_VIDEO=1
DEFINES += WTF_USE_GSTREAMER=1
DEFINES -= WTF_USE_GSTREAMER=0
} else {
message("Disabling video e the lack of GLib/Gio/GStreamer.")
DEFINES -= ENABLE_VIDEO=1
DEFINES += ENABLE_VIDEO=0
}

如果不指定-force-pkg-config, 就会被当作no-pkg-config.
2. 为configure指定:PKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig, 否则也会diabling video
3. 为了让webkit库能找到gstreamer等库, 还需要在webkit.pro中加上
转载,仅供参考。

❷ 在linux下怎么打包直接运行的node-webkit桌面应用

打包一个双击就可以直接运行的node-webkit应用,需要有:自己做的项目文件、package.json的配置文件,还有下载下来的node-webkit。

一、打包一个可以运行 .nw文件
1、在要打包的项目的主页面同一级目录里建一个package.json的文件,它是用来配置运行窗口和应用信息的。
如下图是我的项目,其中demo.html就是我运行这个应用时打开的页面:

我的很简单package.json文件内容如下,这2个是必备的。name可任意起,main就是你要运行的主页文件名:
查看文本打印
{
"name": "music",
"main": "demo.html"
}

2、将整个文件夹zip打包成 xxx.nw文件,一定要是zip打包,其他是不行的,我就在这里搞错了。
我的这个用命令压缩是:zip -r MusicPlay.nw css demo.html images package.json script
生成的包:

打开是这样的:

这样可运行的 .nw文件就好了,这时可以测试一下是否成功。
两种方法检测:
1)可以直接拖拉这个压缩包拖到下载的node-webkit文件夹里的nw上面运行;
2)可以用命令行运行:
先cd到node-webkit文件目录下,我的是:cd /opt/node-webkit-v0.9.1-linux-ia32
然后输入:./nw /home/shara/workplace/php/MusicPlayerHTML5/MusicPlay.nw
这样它就会运行了,成功时长这样,我的东西还没做好,所以长好丑,忽略吧:

二、将这个MusicPlay.nw和node-webkit文件下的 nw 一起创建一个文件:cat MusicPlay.nw nw > app && chmod +x app
在node-webkit文件夹里得到这个东西:

最后将node-webkit文件夹里的libffmpegsumo.so 和 nw.pak 跟这个app放到一个文件夹里,把这个文件夹放别人的机子上,它也可以直接双击运行这个app文件了。

❸ WebKit嵌入式移植

苹果公司在设计WebKit之时加入了太多Mac OS X平台的独有事物,这给向其它系统的移植造成了很大障碍。不过,由于WebKit出色的开源特性,这些障碍正在被不断克服。

WebKit是Mac OS X v10.3及以上版本所包含的软件框架(对v10.2.7及以上版本也可通过软件更新获取)。同时,WebKit也是Mac OS X的Safari网页浏览器的基础。WebKit是一个开源项目,主要由KDE的KHTML修改而来并且包含了一些来自苹果公司的一些组件。

传统上,WebKit包含一个网页引擎WebCore和一个脚本引擎JavaScriptCore,它们分别对应的是KDE的KHTML和KJS。不过,随着JavaScript引擎的独立性越来越强,现在WebKit和WebCore已经基本上混用不分(例如Google Chrome采用V8引擎,却仍然宣称自己是WebKit内核)。

Webkit的优势是速度快,而IE的优势是兼容性好。

❹ 如何在Linux的Eclipse集成开发环境中配置Webkit库

在Linux的Eclipse集成开发环境中无法配置Webkit库,只有在ios开发环境中才能使用。
WebKit是开源的Web浏览器引擎,苹果的Safari、谷歌的Chrome浏览器都是基于这个框架来开发的。WebKit 还支持移动设备和手机,包括iPhone和android手机都是使用WebKit做为浏览器的核心。
WebKit 是一个开源项目,其起源可追溯到 K Desktop Environment (KDE)。WebKit 项目催生了面向移动设备的现代 Web 应用程序。虽然设备本身的能力和形态因素都相当重要,但移动用户最热衷的仍然是内容。如果移动用户可用的内容只是 Internet 用户可用内容的一个很小的子集,那么用户体验充其量也只能划分为二等。
WebKit 还应用在了桌面的 Safari 浏览器内,该浏览器是 Mac OS X 平台默认的浏览器。不管我们讨论的是桌面版本还是 iPhone 或 Android 上的浏览器引擎,WebKit 均优先支持 HTML 和 CSS 特性。实际上,WebKit 还支持尚未被其他浏览器采纳的一些 CSS 样式 — 这些特性正在得到 HTML5 规范的考虑。
HTML5 规范是一个技术草案集,涵盖了各种基于浏览器的技术,包括客户端 SQL 存储、转变、转型、转换等。HTML5 的出现已经有些时间了,虽然尚未完成,但是一旦其特性集因主要浏览器平台支持的加入而逐渐稳定后,Web 应用程序的简陋开端将成为永久的记忆。Web 应用程序开发将成为主导 — 并且不只是在传统的桌面浏览器空间,还将在移动领域。移动将一跃成为首要考虑,而不再是后备之选。

❺ windows下和linux下怎么搭建webkit浏览器,新手小白求详细教导

看下这里有详细介绍:http://blog.csdn.net/glt3953/article/details/12510923

❻ 在linux下怎么打包直接运行的node-webkit桌面应用

node-webkit 是一个很神奇的桌面客户端项目,正如这个项目的名字,这个项目是由node 和 webkit 构成,简单来说,就是你可以用HTML 5和 node 进行桌面客户端开发,而且客户端还是同时支持在 WIN,MAC,LINUX运行. 下面,就用一个简单的例子来展示一下node-webkit的魅力.

创建项目

本例子基于Grunt构建

如果,你用过grunt,要创建一个node-webkit 非常简单,我已经写好了一个node-webkit的grunt-init的项目模板. 至于怎么安装这个模板,跟官方的教程一样. 如果你是windows 用户

md %USERPROFILE%.grunt-init\node-webkit

git clone git@github:youxiachai/grunt-init-node-webkit.git %USERPROFILE%.grunt-init\node-webkit

linux or mac

git clone [email protected]:youxiachai/grunt-init-node-webkit.git ~/.grunt-init/node-webkit

你只需要用

grunt-init node-webkit

就可以创建完毕.

app.nw 这个目录就是我们准备要开始写的pc 客户端的项目文件夹,运行node-webkit项目很简单,只需要把node-webkit 的运行环境配置到环境变量,然后运行

nw app.nw 就可以运行起来了. nodewebkit1

PS: 如果你不想接触grunt,不过我建议还是学一下grunt,你可以到github/rogerwang/node-webkit#quick-start 学习如何启动一个node-webkit应用.

效果图

oscdesk1

oscdesk2

这个就是所谓的 win 8 风格的客户端了吧....界面用的框架是这货:aozora.github.io/bootmetro/ 90% 的时间都是调整界面...蛋疼死了......连个 win8 风格的progress 都没..让我非常伤心..也可能是alpha 的原因吧. 不过最后的效果,还是很难看,就凑合着过去吧....

开发

基于node-webkit 开发pc 客户端语言支持 c/c++,html5,css3, js,node api.好了,现在我们开始用html 5 + css3 写一个pc 客户端吧. node-webkit本质就是一个可以跑node 的浏览器,所以,我们用web 开发的技巧来开发pc 客户端毫无问题.

首先,打开toolbar,在package.json文件里面有个toolbar的参数,设置为true即可,就会见到如下图所示:

toolbar

点击那个三横线的按钮,一个chrome 风的调试窗口就出来了.

console

开发的时候,我们修改完文件,并不需要重新运行程序来看结果,我们,可以直接点击左边的刷新按钮即可看到我们修改的运行结果.用node-webkit开发客户端是不是很方便了!

那么接下来,要开发一个oschina pc 客户端,我们只需要知道,相关api 就行了,从android 客户端源码里面可以得到相关api...具体代码在app/model/oschinaApi.js 文件里面.

node-webkit,已经吧相关的安全限制已经去掉,所以说,用node-webkit开发pc客户端,用webkit 发的请求不受同源限制. 用node-webkit 开发一些restful 应用是非常舒服的事情,只要有个不错的界面.关于node-webkit的东西也就这么些了,剩下的就是web 开发,不在本文node-webkit范围内,所以就不再啰嗦..

❼ linux 怎样搭建qtwebkit使用的gstreamer

1. 编译libxml2

下载libxml2-sources-2.7.6.tar.gz

解包后在当前目录下编写如下编译脚本:(当然,不用脚本也行,你可以直接执行)】

CC=arm-none-linux-gnueabi-gcc./configure--build=i686-linux--host=arm-none-linux--prefix=/home/work/dist--without-python
make&&makeinstall

2. 编译zlib, 这个太common,我不啰嗦了, glib-2.0要依赖的。

3. 编译glib-2.0

下载glib-2.24.2.tar.bz2, 解包, 这个版本的依赖库很少, 竟然只需要zlib。

老版本需要的libconv, gettext等均不需要了。

同样, 编写编译脚本:

CC=arm-none-linux-gnueabi-gcc./configure--build=i686-linux--host=arm-none-linux
--prefix=/home/work/dist
CFLAGS="-I/home/work/dist/include-L/home/work/dist/lib"
glib_cv_stack_grows=noglib_cv_uscore=noac_cv_func_posix_getpwuid_r=yes
ac_cv_func_posix_getgrgid_r=yesac_cv_lib_rt_clock_gettime=noglib_cv_monotonic_clock=yes
make&&makeinstall

4. 编译gstreamer

下载gstreamer-0.10.35.tar.gz, 这个是0.10版本里面最新的了。

编译脚本:

CC=arm-none-linux-gnueabi-gccPKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig./configure--build=i686-linux--host=arm-none-linux
--prefix=/home/work/distCFLAGS=-I/home/work/dist/include--disable-registry--disable-loadsave--disable-gtk-doc
ac_cv_func_register_printf_function=no--disable-tests--disable-valgrind--disable-debug--disable-gst-debug

make&&makeinstall

5. 编译gst plugins base

下载gst-plugins-base-0.10.35.tar.gz。

编译脚本:

CC=arm-none-linux-gnueabi-gccPKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig./configure--build=i686-linux--host=arm-none-linux
--prefix=/home/work/distCFLAGS=-I/home/work/dist/include--disable-valgrind--disable-x--disable-gnome_vfs--disable-alsa--disable-ogg--disable-pango--disable-theora--disable-vorbis--disable-examples

make&&makeinstall


接下来开始编译Qt

Qt的配置文件很复杂, 我就不写出来了, 就是要注意这三点:

1. 在Qt 的configure 时加上-force-pkg-config, 否则会在WebCore的feature.pri中检查时报"Disabling video e the lack of GLib/Gio/GStreamer.",

也就是说会不支持video.

具体可以看这个pri片段:

!contains(QT_CONFIG,no-pkg-config):system(pkg-config--existsglib-2.0gio-2.0gstreamer-0.10):{
DEFINES-=ENABLE_VIDEO=0
DEFINES+=ENABLE_VIDEO=1
DEFINES+=WTF_USE_GSTREAMER=1
DEFINES-=WTF_USE_GSTREAMER=0
}else{
message("DisablingvideoethelackofGLib/Gio/GStreamer.")
DEFINES-=ENABLE_VIDEO=1
DEFINES+=ENABLE_VIDEO=0
}


如果不指定-force-pkg-config, 就会被当作no-pkg-config.

2. 为configure指定:PKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig, 否则也会diabling video

3. 为了让webkit库能找到gstreamer等库, 还需要在webkit.pro中加上

❽ 怎样自行开发一个Webkit内核的浏览器

首先为什么需要使用webkit或chrome浏览器内核?本人之前一直使用IE控件中的IE浏览器,对于简单的开发已经够用了,但是IE有它的诟病,特立独行,对HTML5新特性兼容性非常差,由于近期在研究HTML5以及2.5D和3D地图相关技术,所以一开始就摒弃了使用IE内核的想法。关于windows下使用chrome浏览器内核或webkit内核,已经专研了好几天,一直在碰壁,我相信也有不少网友也跟我一样,查阅了几天都没有任何进展,下面我说说这几天查阅资料遇到的问题:

(1)关于webkit或chrome相关源码都需要编译,而且编译环境相当复杂,很多时候按照文章流程走,要么走不通,要么出一连串解决不了的错误,最终心灰意冷,直到放弃(大多数搞windows开发的在编译这块都缺少相关经验,不比linux开发员);

(2)能找到人家已经编译好的webkit或chrome内核库,但是不是最新的库,很多都是2012年之前的,太老的,对于近几年HTML5的飞速发展,我想那些陈旧的库已经不再适用了。

❾ 我现在有一个自己定制的linux系统,自己也编译好了webkit,怎么样使系统运行后自动运行webkit浏览器并显示

运行webkit浏览器你得先让它有桌面环境哦,亲
然后才能启动图形化的浏览器
你得先让它启动直接进入桌面环境
在你的桌面管理器里设定打开浏览器
类似于windows的开始--> 启动 项

❿ 如何从android源码中编译webkit

android本来自带了webkit浏览器,但是要对其进行custom就需要android源代码才行, 但是在没有源码的情况下,那么就需要用到ndk了,比如,我是在xoom上做custom webkit的。 虽然ndk提供的库很少,而且没有skia,但是好在有bitmap,这样显示慢了点,没有硬加速,但不是不可能。 webkit需要的第三方库,freetype,png,jpeg,sqlite3等虽然android源码中有,但是ndk没有开放, 因此所有的第三方库,freetype,png,jpeg,sqlite3,cairo,curl,fontconfig,pixman,iconv等 都需要用ndk cross-compile成静态库,然后链接到最终的动态库中。 选择iconv是icu太大,而且没有多语言的需求,选择cairo+pixman是skia的移植性不好,而且cairo支持很多种backend。 编译第三方库需要用到autoconfig,ndk中有如何生成交叉编译链的文档,然后在configure时使用这个工具链就可以了, 但是android用到的是bionic库,因此会有很少的地方需要修改,有些库也不能生成test程序,但是静态库是没问题的。 利用ndk生成的交叉工具链,在加上webkit自带的cmake编译系统,生成webkit的动态库是没有问题的, 当然是webkit的内核,而且有些平台相关的部分代码需要修改,但是只要是以linux平台为基础,修改还是很容易的, 我移植的webkit是先移植到linux平台上,然后移植到android平台上的,所以修改相对少了很多, 但是修改大多都在WebCore/platform下,在选择了的平台相关库后,做相应的配置和修改, 其次是在WebKit目录,这个主要是支持和使用WebCore,因此在需求不是整个浏览器,而只是正常地显示网页时, 还是可以写的比较简单的。

阅读全文

与linux编译webkit相关的资料

热点内容
安卓手机连车载的叫什么 浏览:221
怎么让自己的手机键盘变得好看app 浏览:53
能看qq的文件夹 浏览:513
android二维码生成代码 浏览:567
焦炉气压缩机 浏览:400
imap接收邮件服务器地址 浏览:291
小乔肖恩解压密码 浏览:643
php网页网盘源码 浏览:181
签到任务源码 浏览:814
母亲节的文案怎么写app 浏览:984
加密协议aes找不到 浏览:250
java服务器端开发源码 浏览:551
编译器编译运行快捷键 浏览:333
住房app怎么快速选房 浏览:174
怎么在电脑上编译成功 浏览:214
单片机可调时钟设计方案 浏览:192
qq文件夹密码忘记怎么找回 浏览:683
php扩展插件 浏览:608
解压视频厕所抽纸 浏览:952
app减脂怎么用 浏览:452