精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

解析S60 Webkit編譯方法

移動開發
S60 Webkit編譯方法是本文要介紹的內容,主要是來了解并學習S60 Webkit應用,具體內容的學習來看本文詳解。

S60 Webkit編譯方法是本文要介紹的內容,主要是來了解并學習S60 Webkit應用,把基本的s60 webkit的編譯環境給搭建好了,下一步就是要調整一下這個s60 webkit的編譯腳本了。打開這個s60 webkit,應該可以看到一個叫做build.bat文件,這個文件是windows下面的批處理文件(不過有趣的是,這個文件實際上是使用perl的語法編寫的。)

按照官方的compile guide,需要用戶安裝carbide express 1.0才可以工作,但是我這邊懶得這么做了,浪費硬盤空間,偶安裝的是carbide.c++ v1.3 oem版(hoho,這個版本的license可以從網上很容易地下載到)直接可以通過簡單修改一下這個build.bat來實現自動化編譯,當然了,如果各位真的嚴格按照官方的guide一步一步做的話,大可不必像偶這么麻煩:

首先打開C:\Symbian\9.1\S60_3rd\S60\build.bat,然后找到下面這樣的腳本:

  1. my $cbdhome = $ENV{CARBIDE_HOME} || '';  
  2. $cbdhome = "$ENV{ProgramFiles}\\Carbide" unless -d $cbdhome;  
  3. $cbdhome = "c:\\Carbide" unless -d $cbdhome;  
  4. $cbdhome = "c:\\apps\\Carbide" unless -d $cbdhome; 

這幾行應該是為carbide express 1.0準備的路徑,而我們目前用的是carbide.c++ v1.3,所以還是要做以下修改的:

  1. my $cbdhome = $ENV{CARBIDE_HOME} || '';  
  2. # changed by wayne   
  3. $cbdhome = "$ENV{ProgramFiles}\\Nokia\\Carbide.c++ v1.3" unless -d $cbdhome;  
  4. $cbdhome = "$ENV{ProgramFiles}\\Carbide" unless -d $cbdhome;  
  5. $cbdhome = "c:\\Carbide" unless -d $cbdhome;  
  6. $cbdhome = "c:\\apps\\Carbide" unless -d $cbdhome; 

從這里就可以看出來了吧?這里是添加了carbide.c++ v1.3的安裝路徑了。
 
然后下一步,就是要找到如下的地方:

  1. delete $ENV{'MWSYM2LIBRARIES'}; 

這一步也是為carbide express 1.0用的,用1.3的朋友,呵呵,很幸運就可以不必用這個了,直接注釋掉即可,修改以后應該是這個樣子的:

  1. # changed by wayne   
  2. # delete $ENV{'MWSYM2LIBRARIES'}; 

另外,在這個build.bat中還有一個地方就是這里:

  1. my $sdkhome = $Registry->{ "HKEY_LOCAL_MACHINE/SOFTWARE/Symbian/Series 60/3rd Ed. SDK for Symbian OS/TargetDir" }; 

這里代表剛剛安裝的sdk在注冊表中的路徑,請親手確認一下這個注冊表項是否真的存在,其指定的路徑是否正確(這一點對于多次安裝這個版本的sdk的朋友來說是很重要的),如果不存在就手工創建它,或者手工把它修改正確。

好了,現在就可以進入一下命令行,用devices命令確認一下,當前的sdk,就可以高高興興地開始編譯了。
 
進入:

  1. C:\Symbian\9.1\S60_3rd\S60\ 

然后輸入命令:

  1. build  

不出意外的話,應該開始一段漫長的編譯過程,hoho,偶的機器上編譯了10多分鐘呢。。。痛苦ing

然后就可以打開模擬器,去看看效果了。這種方式的build只能夠編譯出來winscw的版本,只能夠在模擬器上使用。呵呵,很興奮是不是?已經看到自己編譯出來的瀏覽器可以在手機上正常工作了是不是?!
 
如果真的要編譯成armv5或者gcce的版本,還有比較漫長的路要走。編譯生成手機上可以工作的版本需要以下的一些工作,首先build.bat是可以帶命令行參數的,具體的定義如下:

  1.  -n Do not include clean in compile  
  2. -f run freeze phase and exit  
  3. -g GCCE compiler for hardware build  
  4. -w Code Warrior compiler for emulator build  
  5. -t Target build  
  6. -d Turn on debugging, forces udeb flavour  
  7. -e Export generated environment and exit  
  8. -r Remove S60Internal dependencies and exit  
  9. -s X Map drive to this letter. Defaults to x  
  10. -h View this message 

我們如果希望編譯成手機可以使用的二進制版本,就要使用build -g這個命令才行:

  1. build -g 

初次運行這個命令會發現如下錯誤:
 
(1)關于"int64_t"數據類型的問題出錯的提示是這個樣子的:

  1. JavaScriptCore//bindings//HashFunctions.h:35:error:'int64_t' does not name a type.. 

這個錯誤是由于編譯器里面沒有內置int64_t之類的數據類型導致的(armv5的編譯器就沒有這個問題)

解決的方法很簡單:

修改c:\Symbian\9.1\S60_3rd\S60\JavaScriptCore\kjs\stdint.h文件,在末尾#endif的上面添加如下的定義:

  1. typedef long long int64_t;  
  2. typedef unsigned long long uint64_t;  
  3. typedef unsigned long uintptr_t;  
  4. typedef unsigned long intptr_t; 

這下子就不會在報告那個聒噪的問題了,注意必需要在這個文件里面做修改,直接修改:

  1. epoc32\include\oem\javascriptcore\stdint.h 

這個文件是無效的,因為每次build都會重新把JavaScriptCore里面的這個stdint.h拷貝到sdk的include\oem\javascriptcore目錄下面,會把你修改過的stdint.h覆蓋掉,因此,必需要在s60 webkit的源代碼里面進行修改。
 
(2)關于memman的錯誤
 
出錯的提示是這個樣子的:

  1. elf2e32:Error:E1036:Symbol _ZTI15CSimpleNotifier, _ZTI15CSimpleNotifier Missing   
  2. from ELF File:..\EPOC32\BUILD\MEMMAN\GCCE\UREL\MemMan_sdk.dll.... 

這個錯誤是由于似乎導出函數里面少了一個函數導致的,解決的方法也很簡單,修改c:\Symbian\9.1\S60_3rd\S60\MemoryManager\Eabi\MemMan_sdkU.DEF文件,
 
原文是:

  1. _ZTIV15CSimpleNotifier @ 27 NONAME ; DATA 

修改為:

  1. _ZTIV15CSimpleNotifier @ 27 ABSENT ; DATA 

好了,然后就可以使用build -g重新編譯了,編譯完畢后,會有相關的dll的安裝包,然后就可以自己修改和集成了(剩下的偶不想多說了,各位應該都是高手,都能找到調用這些webkit dll的方法),想想看,如果能夠在自己的程序中集成一個全功能的內置瀏覽器,會不會感覺很爽?在推廣自己的客戶端軟件產品的同時也把自己的wap網站也一并推廣了。
 
(3)關于代碼中的幾處namespace忘記加分號結尾的問題,有幾處需要修改的:

  1. c:\Symbian\9.1\S60_3rd\S60\WebKit\BrowserView\inc\WidgetExtension.h 

定義如下的namespace,但是忘記加上分號了:

  1. namespace KJS {  
  2.    class WidgetEventHandler;  

應該改為:

  1. namespace KJS {  
  2.    class WidgetEventHandler;  
  3. }; // <----------注意,這里增加了一個分號!!  
  4. c:\Symbian\9.1\S60_3rd\S60\WebCore\khtml\dom\dom_string.h 

改為如下定義,加上分號,不再贅述:

  1. namespace khtml {  
  2.     class Length;  
  3. }; // <----------注意,這里增加了一個分號!!  
  4.  
  5. c:\Symbian\9.1\S60_3rd\S60\WebCore\khtml\misc\loader.h 

改為如下定義,加上分號,不再贅述:

  1. namespace KIO {  
  2.   class Job;  
  3.   class TransferJob;  
  4. };    // <----------注意,這里增加了一個分號!! 

(4)增加幾個函數定義
 
在java script core里面,有幾個函數是沒有定義的,需要手工添加進去:
 
 

  1. c:\Symbian\9.1\S60_3rd\S60\JavaScriptCore\group\BMARM\JavaScriptCoreU.def 

打開這個文件,然后在該文件的末尾添加如下定義:

  1. _ZN3KJS11Interpreter30createLanguageInstanceForValueEPNS_9ExecStateENS_8Bindings8Instance15
  2. BindingLanguageERKNS_6ObjectEPKNS3_10RootObjectESB_ @ 389 NONAME  
  3. _ZN3KJS16RuntimeObjectImpC1EPNS_8Bindings8InstanceEb @ 390 NONAME _ZN3KJS16RuntimeObject
  4. ImpC2EPNS_8Bindings8InstanceEb @ 391 NONAME _ZTIN3KJS16RuntimeObjectImpE @ 392 NONAME ; 
  5. #<TI># _ZTVN3KJS16RuntimeObjectImpE @ 393 NONAME ; 
  6. #<VT># _ZN3KJS15ProtectedValues20decreaseProtectCountEPNS_8ValueImpE @ 394 NONAME   
  7. _ZN3KJS15ProtectedValues20increaseProtectCountEPNS_8ValueImpE @ 395 NONAME   
  8. _ZN3KJS8Bindings10RootObject14setInterpreterEPNS_11InterpreterE @ 396 NONAME   
  9. _ZN3KJS8Bindings10RootObject25removeAllNativeReferencesEv
  10. @ 397 NONAME _ZN3KJS8Bindings8Instance32createBindingForLanguageInstanceENS1_15BindingLanguageEPvPKNS0_10RootObjectE @ 398 NONAME   
  11. _NPN_CreateScriptObject @ 399 NONAME 

(5)解決aiwdialdata.dso找不到的問題
 
修改c:\Symbian\9.1\S60_3rd\S60\WebKit\group\webkit.mmp文件
 
將原來的:

  1. LIBRARY aiwdialdata.lib 

改為:

  1. #ifndef __BROWSER_SDK   
  2. LIBRARY aiwdialdata.lib   
  3. #endif 

然后先用build -g編譯,如果有問題再用build -nfg編譯吧這些dll的出口給freeze一下,然后再用build -g來編譯,就在/epoc32/release/gcce/urel目錄下面生成如下的dll:

  1. BrowserCache_sdk.dll  
  2. BrowserRec_sdk.DLL  
  3. HistoryProvider_sdk.dll  
  4. JavaScriptCore_sdk.DLL  
  5. MemMan_sdk.dll  
  6. pagescaler_sdk.dll <---這個dll應該不是編譯出來的,應該是S60WebKit自帶的  
  7. WebCore_sdk.dll  
  8. WebUi.exe 

這些有了就可以查看那個S60WebUi的目錄,具體地去看如何使用這些dll了。

小結:解析S60 Webkit編譯方法的內容介紹完了,希望通過S60 Webkit應用內容的學習能對你有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-09-09 15:08:17

S60 WebKit

2009-04-16 08:23:52

Opera瀏覽器S60

2009-06-05 09:04:36

Google MobiS60系統

2009-07-24 09:26:27

Google Maps

2011-06-24 09:46:01

Windows PhoSymbian S60MeeGo

2011-06-23 09:31:56

Nokia Qt SDK

2010-06-02 10:33:52

Symbian開發

2009-04-17 09:08:44

SymbianS60上網本

2010-06-12 10:08:05

Symbian開發

2009-08-13 09:38:02

Symbian S60Nokia新界面

2009-04-16 09:28:30

NokiaPhoto BrowsS60

2009-04-15 09:01:02

Symbian瀏覽器諾基亞

2010-05-12 10:44:24

2009-06-04 09:24:59

SymbianUCWEB瀏覽器

2009-11-25 14:46:27

2009-04-21 09:17:10

UCWEB手機瀏覽器S60

2011-04-29 11:05:57

搜狗手機輸入法

2011-09-09 15:31:04

Android Web插件

2011-09-09 15:51:58

Android Web應用

2009-04-12 08:59:05

Symbian諾基亞移動OS
點贊
收藏

51CTO技術棧公眾號

国产精品污视频| 神马午夜精品91| 欧美一级在线| 亚洲一区二区三区四区五区黄| 精品欧美一区二区在线观看视频| 艳妇乳肉豪妇荡乳av无码福利| 91精品国产乱码久久久久久 | 少妇人妻在线视频| 成人好色电影| 波多野结衣视频一区| 国产精品都在这里| 久久一级黄色片| 热久久天天拍国产| 日韩激情av在线播放| 日韩精品视频一二三| 日韩精品av| 亚洲综合免费观看高清完整版在线| 欧美日韩免费观看一区| aaa一区二区三区| 日韩黄色免费网站| 97免费视频在线播放| 国产3级在线观看| 猛男gaygay欧美视频| 亚洲国产精品va在线看黑人动漫| 亚洲另类第一页| 综合在线影院| 欧美性xxxx极品hd欧美风情| 亚洲啊啊啊啊啊| av资源种子在线观看| 91一区在线观看| 国产精品theporn88| 91资源在线视频| 国产一区导航| 91黑丝在线观看| 青娱乐免费在线视频| 91精品蜜臀一区二区三区在线| 一本色道久久88综合日韩精品| 亚洲观看黄色网| 动漫av一区| 精品国产污污免费网站入口| 无套内谢丰满少妇中文字幕 | 久久久久久久久免费视频| 久久久久久毛片| 免费不卡亚洲欧美| 秋霞欧美在线观看| 顶级嫩模精品视频在线看| 91在线免费视频| a天堂视频在线| 国产精品一区专区| 91精品综合久久| 国产美女裸体无遮挡免费视频| 久久精品主播| 国产精品久久久久久久久久久不卡 | 亚洲国产毛片aaaaa无费看| 日韩最新中文字幕| 婷婷丁香在线| 一级特黄大欧美久久久| 成人一级生活片| 免费成人在线电影| 色一情一乱一乱一91av| 一区二区三区韩国| 日韩欧美激情| 欧美一级一区二区| 911亚洲精选| 亚州av一区| 夜夜嗨av色综合久久久综合网| 国产精品情侣呻吟对白视频| 首页国产精品| 欧美精品日韩www.p站| 麻豆一区产品精品蜜桃的特点| 国产在线成人| 日韩av色综合| 一卡二卡在线视频| 国产69精品久久久久毛片| 国产日韩二区| 91福利在线视频| 亚洲欧美综合在线精品| 日b视频免费观看| 在线天堂资源www在线污| 欧美性一区二区| 色婷婷综合在线观看| 国产精品流白浆在线观看| 日韩高清免费观看| 日韩精品电影一区二区三区| 91精品久久久久久久久久不卡| 欧美国产视频一区二区| 欧美 日韩 精品| 精品一二线国产| 精品国产91亚洲一区二区三区www| 欧美日本韩国一区二区| 中文字幕一区不卡| 131美女爱做视频| 国产乱子精品一区二区在线观看| 欧美成人福利视频| 蜜桃传媒一区二区亚洲| 欧美三级特黄| 55夜色66夜色国产精品视频| 一区不卡在线观看| 91蜜桃网址入口| 免费看日b视频| 四虎4545www精品视频| 精品免费日韩av| 女人黄色一级片| 亚洲国产日韩欧美一区二区三区| 国产精品视频内| 天天射天天色天天干| 中文字幕一区二区三区视频| 69堂免费视频| 日韩最新av| 中文字幕日韩专区| 草久久免费视频| 国产91富婆露脸刺激对白| 亚洲精品久久区二区三区蜜桃臀 | 92看片淫黄大片看国产片| 青青免费在线视频| 亚洲国产精品人人做人人爽| 夜夜夜夜夜夜操| 国内成人自拍| 91成人在线播放| 亚洲毛片在线播放| 亚洲欧美二区三区| 高清一区在线观看| 亚洲警察之高压线| 韩国一区二区电影| 精品国自产拍在线观看| 国产精品久线观看视频| 日本精品一区二区三区四区| 欧美一区二区三区红桃小说| 久久6精品影院| 91亚洲精品国偷拍自产在线观看 | 亚洲欧美在线第一页| 久久精品这里有| 国产成人午夜精品影院观看视频| 人人妻人人澡人人爽精品欧美一区| 日韩成人动漫| 亚洲人成在线观看| 天天操中文字幕| 91免费国产在线观看| 欧美激情视频免费看| 一区二区三区在线资源| 久久69精品久久久久久久电影好| 国产欧美一级片| 亚洲欧美欧美一区二区三区| 免费在线观看污网站| 日韩久久电影| 91精品国产综合久久久久久久久| 午夜视频在线看| 欧美日韩aaa| 97精品在线播放| 精品一区二区三区免费| 黄色www在线观看| 日韩一区二区三区色| 九九精品视频在线| 亚洲av无码一区二区三区dv| 亚洲国产精品久久人人爱蜜臀| 国产国语老龄妇女a片| aa级大片欧美三级| 欧美13一14另类| 日韩色淫视频| 久热精品视频在线免费观看| 亚洲精品字幕在线| 五月激情六月综合| 国产一区二区三区四区五区六区| 日本不卡视频在线| 成人性做爰片免费视频| 成人福利免费在线观看| 日本精品久久中文字幕佐佐木| 久青青在线观看视频国产| 欧美天天综合网| 欧美老熟妇一区二区三区| 成人少妇影院yyyy| 欧美两根一起进3p做受视频| 91麻豆精品国产91久久久平台| 97人人模人人爽人人少妇| 成年女人在线看片| 少妇久久久久久| 精品久久久久久亚洲综合网站| 亚洲成人精品一区| 69视频在线观看免费| 国内精品写真在线观看| 欧美成人三级在线视频| 国产精品日韩精品中文字幕| 成人国产精品一区| 182在线播放| 在线观看国产成人av片| 国产高清精品软件丝瓜软件| 欧美性猛交xxxx偷拍洗澡| 日韩av手机在线免费观看| 成人av在线资源网| 伊人影院综合在线| 99精品免费| 国产四区在线观看| 亚洲区小说区图片区qvod| 国产日韩精品一区二区| 国精一区二区三区| 中文字幕欧美日韩精品| 蜜臀久久精品久久久久| 欧美三电影在线| 久久夜靖品2区| 亚洲日本va午夜在线影院| 97人妻精品一区二区三区免| 精品亚洲成a人| 成人在线观看a| 伊人成年综合电影网| 一区二区三区av在线| 天天躁日日躁狠狠躁欧美| 51国偷自产一区二区三区的来源| 黑人巨大精品欧美一区二区桃花岛| 久久av在线看| 不卡在线视频| 亚洲欧美日韩精品久久奇米色影视 | 欧美一二三四在线| 中国黄色一级视频| 欧美性xxxx极品hd满灌| 国产亚洲欧美精品久久久www| 日本一区二区成人在线| free性中国hd国语露脸| 成人深夜在线观看| 日韩高清在线一区二区| 美女视频一区在线观看| 无码日韩人妻精品久久蜜桃| 亚洲影院一区| 男人日女人视频网站| 综合激情视频| 国产日韩欧美大片| 欧美国产一级| 三区精品视频观看| 一区二区美女| 农村寡妇一区二区三区| 欧美一级一片| 久久久久久艹| 亚洲黄色录像| 久久福利电影| 老汉色老汉首页av亚洲| 国产精华一区二区三区| 久久久久久久久久久久电影| 91精品久久久久久久久久入口 | 欧美在线影院一区二区| 精品国产xxx| 色综合久久久久综合体桃花网| www.国产高清| 色综合久久久久综合体| 中文字幕在线日本| 色av成人天堂桃色av| 少妇高潮av久久久久久| 一本大道久久a久久综合婷婷| 麻豆成人免费视频| 一本久道中文字幕精品亚洲嫩| 台湾佬中文在线| 在线观看三级视频欧美| 性色av一区二区三区四区| 欧美日韩一区高清| 91久久久久国产一区二区| 3d成人h动漫网站入口| 国产女同91疯狂高潮互磨| 日韩精品一区二区三区在线| 亚洲av无码乱码国产麻豆| 欧美精品一区二区三区一线天视频| 国产成人手机在线| 日韩激情av在线免费观看| 久草在线青青草| 中文字幕国产日韩| 国产欧美黑人| 午夜精品久久久久久久久久久久 | 欧美军同video69gay| 国产精品伦一区二区三区| 日韩午夜在线观看| 香蕉视频黄在线观看| 亚洲午夜女主播在线直播| 青青影院在线观看| 欧美国产视频日韩| 欧美特黄aaaaaaaa大片| 国产日韩换脸av一区在线观看| 亚洲国产欧美在线观看| 久久av一区二区三区漫画| 精品国产精品久久一区免费式| 亚洲自拍偷拍二区| 亚洲欧美综合| www黄色av| 国产伦精一区二区三区| 无码人妻aⅴ一区二区三区| 国产清纯在线一区二区www| av成人免费网站| 狠狠干狠狠久久| 国产有码在线观看| 亚洲精品福利在线观看| av一本在线| 欧美肥臀大乳一区二区免费视频| 成人教育av| 97av影视网在线观看| 最近国产精品视频| 成人在线视频一区二区三区| 媚黑女一区二区| 日韩精品一区国产麻豆| 福利视频999| 成人午夜电影小说| 91成年人网站| 一区二区三区资源| 久久人人爽人人爽人人片av免费| 日韩午夜激情电影| 可以在线观看的av| 欧美精品国产精品日韩精品| 日韩av黄色| 欧美另类网站| 伊人久久婷婷| 在线观看免费av网址| 91啪九色porn原创视频在线观看| 亚洲区一区二区三| 色av综合在线| 香蕉视频黄色片| 久久久免费高清电视剧观看| 亚洲图片小说区| 日韩福利视频| 国产精品日本| 久草视频福利在线| 日韩毛片在线免费观看| 精品乱码一区内射人妻无码| 欧美精品一区二区久久久| 免费黄网站在线| 国产精品视频网| 国产99精品一区| 亚洲熟妇av日韩熟妇在线| 国产91丝袜在线播放九色| 免费在线黄色网| 制服.丝袜.亚洲.另类.中文| 啊v视频在线| 国产精品视频精品| 日日狠狠久久偷偷综合色| 免费看黄在线看| 国产91高潮流白浆在线麻豆| 唐朝av高清盛宴| 日韩欧美一区中文| 中文字幕伦理免费在线视频 | 日本黄在线观看| 国产69久久精品成人| 久久国产精品色av免费看| 韩日视频在线观看| 国产精品123区| 免费在线观看国产精品| 欧美一区二区三区不卡| 欧美jizz18性欧美| 国产日韩欧美中文| 欧美好骚综合网| 国产三级生活片| 亚洲欧美激情插| 午夜精品久久久久久久爽| 欧美成人手机在线| 日韩在线成人| 久久久久久久9| 91在线高清观看| 成年人av网站| 在线中文字幕日韩| 日韩电影免费观看高清完整版在线观看| 伊人久久大香线蕉精品| 国产一区二区精品在线观看| 免费一级肉体全黄毛片| 亚洲黄色片网站| 丝袜美腿一区| 亚洲午夜精品一区二区| 国产综合成人久久大片91| 国产一级免费av| 亚洲男人天堂古典| 成人国产一区| 久久久久久久久影视| fc2成人免费人成在线观看播放| 国产精品100| 一区二区欧美在线| 国产精品一区免费在线| 欧美午夜性视频| 国产人伦精品一区二区| 国产精品无码白浆高潮| 欧美精品激情在线观看| 自拍亚洲一区| 国产5g成人5g天天爽| 午夜私人影院久久久久| 国产女人在线观看| 亚洲japanese制服美女| 亚洲美女网站| 黄色激情小视频| 亚洲电影第1页| 国产福利亚洲| 久久99中文字幕| 国产精品久久午夜| 日韩一级在线播放| 国产精品久久久久久亚洲调教| 综合久久99| 久久久视频6r| 欧美成人一区二区| gogo亚洲高清大胆美女人体| 老司机午夜网站| 久久久久久一二三区| 国产91视频在线| 国产成人精品免费视频| 欧美精品18| 国产伦精品一区二区三区视频女| 日韩一区二区三区电影在线观看| 不卡av影片| 日韩a级在线观看| 国产精品国产三级国产aⅴ入口 | 欧美成人合集magnet|