日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

crosswalk源码 的编译过程

發布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 crosswalk源码 的编译过程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

crosswalk 官方:https://github.com/crosswalk-project

編譯環境 Ubuntu 16.04
crosswalk 支持的Ubuntu版本 12.04 、14.04、14.10、15.04、15.10、16.04。

編譯Android平臺上的Crosswalk,你首先應該設置 XWALK_OS_ANDROID環境變量:

export XWALK_OS_ANDROID=1

創建一個源碼目錄:

mkdir crosswalk cd crosswalk

如果沒有安裝 depot_tools 先安裝、已安裝跳過該步驟

//安裝depot_tools: git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git //添加到環境變量里: export PATH="$PATH:/xxx/xxx/depot_tools"

自動生成gclient的配置文件(.gclient):

gclient config --name src/xwalk https://github.com/crosswalk-project/crosswalk.git

在.gclient文件 下添加:

target_os = ['android']

在包含.gclient文件的目錄下,獲取源碼:

gclient sync

gclient sync 如果報錯(未找到解決辦法):

//錯誤信息root@md:~/crosswalk# gclient syncRunning depot tools as root is sad.Syncing projects: 100% (1/1), done.________ running 'vpython src/xwalk/tools/fetch_deps.py -v' in '/home/ws/crosswalk'Traceback (most recent call last):File "src/xwalk/tools/fetch_deps.py", line 86, in <module>sys.exit(main())File "src/xwalk/tools/fetch_deps.py", line 81, in maindeps_fetcher.DoGclientSyncForChromium() File "src/xwalk/tools/fetch_deps.py", line 56, in DoGclientSyncForChromiumgclient_utils.CheckCallAndFilterAndHeader(gclient_cmd,AttributeError: 'module' object has no attribute 'CheckCallAndFilterAndHeader'Error: Command 'vpython src/xwalk/tools/fetch_deps.py -v' returned non-zero exit status 1 in /home/ws/crosswalkTraceback (most recent call last):File "src/xwalk/tools/fetch_deps.py", line 86, in <module>sys.exit(main())File "src/xwalk/tools/fetch_deps.py", line 81, in main deps_fetcher.DoGclientSyncForChromium()File "src/xwalk/tools/fetch_deps.py", line 56, in DoGclientSyncForChromiumgclient_utils.CheckCallAndFilterAndHeader(gclient_cmd,AttributeError: 'module' object has no attribute 'CheckCallAndFilterAndHeader'

可以嘗試下面這條命令:(非常的慢,還容易失敗,失敗了只能重新運行這個命令,看運氣、網速)
記得給.gclient-xwalk添加:

target_os = ['android']

然后運行命令:

gclient sync --verbose --reset --force --with_branch_heads --delete_unversioned_trees --gclientfile=.gclient-xwalk

為Android平臺的Crosswalk安裝依賴關系:

cd src ./build/install-build-deps-android.sh

編譯:

gn args out/Default

在彈出來的頁面放入一下代碼保存退出即可:

import("//xwalk/build/android.gni") is_debug = false target_os = "android" ffmpeg_branding = "Chrome" proprietary_codecs = true rtc_initialize_ffmpeg = true rtc_use_h264 = true target_cpu = "arm" enable_nacl = false symbol_level = 0 remove_webcore_debug_symbols = true use_aura = false use_ozone = false enable_plugins = false disable_bundled_extensions = true v8_use_snapshot = true enable_webrtc = true is_official_build = true v8_enable_i18n_support = false disable_ftp_support = true disable_libfuzzer = true

如果報錯:

../../third_party/android_tools/sdk/extras/google/google_play_services/libproject/google-play-services_lib/res does not exist

類似的文件找不到可以手動下載對應的文件然后放入對應的位置即可

wget https://dl-ssl.google.com/android/repository/google_play_services_8298000_r28.zip //無報錯則忽略。

通過工具和嵌入式庫,編譯Android版Crosswalk的主要部分,你可以運行:

ninja -C out/Default xwalk_core_library

這樣將會在out/Default下創建一個名為xwalk_core_library的目錄,目錄中包含有特定平臺(例如X86或者ARM版)的Crosswalk庫,這些庫可以將Crosswalk嵌入到項目中。

編譯Crosswalk的運行時庫(在Crosswalk共享模式下,一個可以作為應用的runtime的APK),運行:

ninja -C out/Default xwalk_runtime_lib_apk

這將會在out/Default/apks下生成一個名稱為XWalkRuntimeLib.apk的APK。

為了構造一個簡單的web應用APK(為了快速安裝/目標測試),只要執行:

ninja -C out/Default xwalk_app_template_apk

這將會在out/Default/apks下生成一個名稱為XWalkAppTemplate.apk的APK。

總結

以上是生活随笔為你收集整理的crosswalk源码 的编译过程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。