精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

免费国产在线视频| 久久精品这里只有精品| 国产麻豆久久| 国产精品网站在线| 亚洲综合在线播放| 国产精品xxxx喷水欧美| 国产探花一区二区| 欧美一区二区三区婷婷月色| 男人日女人下面视频| 国产女人在线视频| 成人精品视频.| 日本久久久a级免费| 99成人在线观看| 老牛精品亚洲成av人片| 精品视频全国免费看| 欧洲精品在线播放| 五月天婷婷在线视频| 丁香网亚洲国际| 国产精品视频不卡| 91av在线免费视频| 中文字幕一区二区三区乱码图片| 精品视频久久久| 青娱乐国产精品视频| 伊人久久高清| 午夜电影久久久| 26uuu成人| 蜜桃视频在线入口www| 国产成人一区在线| 国产精品香蕉av| 中文字幕亚洲精品在线| 牛牛国产精品| 日韩中文字幕在线播放| 偷拍女澡堂一区二区三区| 精品中文字幕一区二区三区四区| 在线观看一区二区视频| 欧美 日韩 激情| 免费看电影在线| 亚洲情趣在线观看| 亚洲三区在线| 黄色软件在线观看| 久久婷婷色综合| 国产一区免费在线| 国产富婆一级全黄大片| 奇米精品一区二区三区在线观看 | 日本精品久久久久中文| 亚洲激情播播| 日韩国产中文字幕| 性欧美18—19sex性高清| 免费一级欧美在线大片| 欧美片网站yy| 九九精品久久久| 99久久久国产精品免费调教网站| 日本韩国欧美在线| 91传媒久久久| 成人免费网站视频| 欧美视频免费在线| 免费高清在线观看免费| 在线免费看h| 日韩欧美极品在线观看| 不卡影院一区二区| 免费观看成人性生生活片 | 做a视频在线观看| 欧洲美女精品免费观看视频| 欧美日韩在线播| 奇米影视四色在线| 高清一区二区三区av| 91精品久久久久久蜜臀| 伊人免费视频二| 亚洲不卡在线| 亚洲成人动漫在线播放| yy6080午夜| 婷婷综合成人| 国产亚洲一区精品| 天天爽天天爽天天爽| 一区二区三区网站| 欧美极品美女电影一区| 国产精品老女人| 日韩精品一二三| 成人性生交大片免费看视频直播| 99久久国产热无码精品免费| 国产·精品毛片| 久久er99热精品一区二区三区 | 亚洲精品在线播放| 亚洲国产精品热久久| 巨胸大乳www视频免费观看| 欧美在线色图| 欧美超级乱淫片喷水| 久久免费视频播放| 久久只有精品| 92裸体在线视频网站| 日韩一级片免费看| 中文在线免费一区三区高中清不卡| 一区二区三区四区五区视频| 18网站在线观看| 欧美天堂在线观看| 在线观看岛国av| 精品国产18久久久久久洗澡| 一区二区欧美激情| 青青草偷拍视频| 性一交一乱一区二区洋洋av| 91久久久亚洲精品| 五月天婷婷社区| 国产精品久久久久一区| 精品丰满人妻无套内射| 91精品国产经典在线观看| 日韩精品一区国产麻豆| 性猛交ⅹxxx富婆video| 欧美日一区二区在线观看 | 久久综合一区二区| 蜜臀在线免费观看| 欧美xxxxxx| 精品久久久久久久久久久久久久久久久 | 九九视频精品免费| 九九99久久| 黄色一级大片在线免费看产| 色噜噜久久综合| 美女网站视频在线观看| 97国产精品| 全亚洲最色的网站在线观看| 99在线观看精品视频| 日本一区二区综合亚洲| 欧美日韩亚洲一| 一区二区三区在线资源| 色哟哟入口国产精品| 超碰中文字幕在线| 成人一区在线看| 在线无限看免费粉色视频| 色综合天天色| 日韩精品福利网站| 日本一区二区三区四区五区| 国产美女精品一区二区三区| 日本一区二区在线视频| 欧美男男tv网站在线播放| 日韩精品专区在线| 久久福利免费视频| 久久av资源站| 亚洲一区高清| 桃花岛成人影院| 亚洲精品在线不卡| 1级黄色大片儿| 成人av电影在线观看| 免费看欧美黑人毛片| 亚洲小说春色综合另类电影| 欧美大片免费观看在线观看网站推荐| 一级特黄录像免费看| 国产精品美女久久久久高潮| 三级在线免费看| 欧美日韩黑人| 国产精品欧美在线| a天堂中文在线88| 色婷婷亚洲一区二区三区| 亚洲成人日韩在线| 性欧美长视频| 日本黄网免费一区二区精品| 日本高清不卡一区二区三区视频 | 人妻精品久久久久中文| 久久字幕精品一区| 日韩美女一区| 欧美国产日韩电影| 少妇精69xxtheporn| 91麻豆一区二区| 亚洲码国产岛国毛片在线| 91aaa精品| 激情综合网址| 久久久亚洲综合网站| 精品国产免费人成网站| 一本大道亚洲视频| 国产又粗又黄视频| 亚洲国产精品一区二区尤物区| 精品久久久久久无码人妻| 国产精品人人爽人人做我的可爱| 久久久av水蜜桃| 69堂精品视频在线播放| 久久亚洲精品网站| 日本精品999| 色视频欧美一区二区三区| 天堂在线中文视频| 国产精品一级片| 黄页免费在线观看视频| 狠狠色丁香婷婷综合影院| 91色中文字幕| 色在线视频观看| 中文字幕综合在线| 亚洲国产精品一| 色婷婷av一区二区三区gif| 午夜精品久久久久99蜜桃最新版| 国产盗摄视频一区二区三区| 国产二级片在线观看| 四季av一区二区三区免费观看| 97人人模人人爽视频一区二区| 在线手机中文字幕| 日韩在线观看高清| 亚洲欧美日本在线观看| 欧美精品日韩一本| 国产又爽又黄的视频| 国产精品久久久久一区二区三区 | 国产欧美日本一区二区三区| 在线黄色免费看| 亚洲日本免费| 午夜精品一区二区三区四区| 精品国产亚洲日本| 国产91成人在在线播放| 激情影院在线观看| 日韩高清中文字幕| 在线观看国产小视频| 久久精品免视看| 师生出轨h灌满了1v1| 久久激情婷婷| av久久久久久| 综合亚洲自拍| 99re在线播放| 色成人免费网站| 欧美激情二区三区| 川上优的av在线一区二区| 日韩西西人体444www| 午夜婷婷在线观看| 亚洲精品国产一区二区三区四区在线| 最近中文字幕免费视频| 国产精品77777| 无码少妇一区二区三区芒果| 国内激情久久| 国产911在线观看| 国产精品美女久久久久久不卡| 91精品视频播放| 巨胸喷奶水www久久久免费动漫| 97国产一区二区精品久久呦| 欧美精品videos另类| 日韩成人在线网站| www.激情五月| 欧美一区二区黄| 色婷婷久久综合中文久久蜜桃av| 亚洲综合在线第一页| 日本少妇xxxxx| 久久久电影一区二区三区| 日本wwwwwww| 狠狠久久亚洲欧美| 欧美精品一区免费| 宅男噜噜噜66国产日韩在线观看| 国产人妻人伦精品| 999国产精品视频| 免费av在线一区二区| 91午夜精品| 91成人免费视频| 999国产精品亚洲77777| 国产精品免费久久久久影院| 久草在线中文最新视频| 欧美成人激情视频免费观看| аⅴ资源新版在线天堂| 中国日韩欧美久久久久久久久| 五月婷婷伊人网| 亚洲国产精品字幕| 天堂在线资源8| 亚洲黄在线观看| 日批视频免费播放| 精品日产卡一卡二卡麻豆| 好吊色一区二区三区| 日韩视频免费观看高清在线视频| 一二三四区视频| 欧美亚日韩国产aⅴ精品中极品| 国产精品成人久久久| 色999日韩国产欧美一区二区| 国产综合精品视频| 在线看一区二区| 亚洲永久精品一区| 欧美在线色视频| 中文字幕理论片| 欧美成人猛片aaaaaaa| 亚洲女同志亚洲女同女播放| 日韩美女一区二区三区| 少妇精品视频一区二区| 亚洲精品xxxx| 巨骚激情综合| 中文亚洲视频在线| 色呦呦在线免费观看| 欧美激情18p| 2021中文字幕在线| 国产激情久久久久| 亚洲精品成a人ⅴ香蕉片| 亚洲影院在线看| 欧美freesex8一10精品| 日韩av一级大片| 成人免费a**址| 国产免费色视频| 狠狠爱综合网| www国产精品内射老熟女| 日韩黄色一级片| 亚洲第一天堂久久| 成人综合婷婷国产精品久久蜜臀| 自拍偷拍中文字幕| 亚洲国产精品av| 亚洲国产精品久| 91黄色小视频| 99热这里只有精品在线| 精品国产91九色蝌蚪| 国产h视频在线观看| 欧美久久久精品| 午夜激情电影在线播放| 国产精品中文字幕久久久| 久久a爱视频| 亚洲一区3d动漫同人无遮挡| 中国成人一区| 亚洲精品一二三四五区| 国产福利91精品一区二区三区| 人妻丰满熟妇aⅴ无码| 亚洲色图在线播放| 日本三级片在线观看| 欧美在线观看视频一区二区三区| 亚洲精品毛片一区二区三区| 亚洲精品videossex少妇| 3d成人动漫在线| 久久男人的天堂| 北岛玲精品视频在线观看| 久久久久久久久久码影片| 五月天久久久| 香港日本韩国三级网站| 成人免费高清在线观看| 天天爽天天爽天天爽| 色婷婷av一区二区三区gif| av中文字幕免费| 伊人亚洲福利一区二区三区| 很黄的网站在线观看| 国产精品欧美日韩| 色老板在线视频一区二区| 看全色黄大色大片| 精品一区二区三区免费毛片爱| 亚洲精品成人无码熟妇在线| 亚洲欧美激情一区二区| 91久久精品无码一区二区| 亚洲欧美日韩一区二区在线| 在线网址91| 亚洲自拍偷拍区| 欧美r级电影| 中国丰满人妻videoshd| 99在线视频精品| 欧美激情图片小说| 欧美日韩国产一级二级| a天堂在线资源| 国产精品91在线| 伊甸园亚洲一区| 欧美一级黄色片视频| av中文字幕不卡| 久久久久久久九九九九| 日韩欧美国产精品| 黄色精品免费看| 91久久精品美女高潮| 欧美国产精品| 国产乱女淫av麻豆国产| 国产精品成人一区二区艾草| 在线免费观看高清视频| 中文字幕日韩在线视频| 三上悠亚激情av一区二区三区| 欧美重口乱码一区二区| 另类图片国产| 波多野结衣影院| 日韩欧美第一页| 三级视频网站在线| 欧美尤物巨大精品爽| 狠狠色丁香婷婷综合影院| 国产精品亚洲αv天堂无码| caoporm超碰国产精品| 综合网在线观看| 亚洲欧美国产另类| 欧美电影免费观看网站| 亚洲精品国产系列| 久久91精品久久久久久秒播| 人妻无码一区二区三区免费| 欧美午夜片在线观看| 日本电影全部在线观看网站视频 | 亚洲日本欧美在线| 久久国产人妖系列| 天天综合天天做| 亚洲国产精品va在看黑人| 精品众筹模特私拍视频| 日韩欧美激情一区二区| 麻豆91精品91久久久的内涵| 999福利视频| 精品捆绑美女sm三区| 男人av在线播放| 欧美久久久久久| 国产一区二区三区在线观看免费| 免费日韩在线视频| 亚洲精品v欧美精品v日韩精品| 99亚洲伊人久久精品影院| 一区二区三区偷拍| 国产成人在线免费观看| 91丨九色丨海角社区| xxx欧美精品| 美国十次av导航亚洲入口| 欧美日韩在线免费播放| 1000部国产精品成人观看| 日本高清视频免费看| 日韩美女主播视频| 91久久高清国语自产拍| 国产真实乱人偷精品| 日本乱码高清不卡字幕| 久久精品视频免费看| 蜜桃av久久久亚洲精品| 久久国产日韩欧美精品| 五月婷婷一区二区| 亚洲深夜福利视频|