skia win32最小環境搭建

2021-06-18 20:36:06 字數 1222 閱讀 6241

想研究一下skia的原始碼,為之後的處理打基礎。

如是嘗試在win32下搭建乙個skia的最小開發環境。

軟體前提:

1 vs2008

2 已有chromium可執行的win32工程

因為已有chromium可執行的win32工程,其實主要工作就是將skia從chromium大工程裡面拎出來。

操作步驟如下:

1 將src/skia目錄拷貝到自己的工程目錄。

2 將skia依賴的src/base,src/build目錄拷貝到自己的工程目錄。

3 將thirdparty下的skia原始碼,zlib,libpng拷貝到工程目錄。

4 工程目錄下建立test工程(win32控制台工程),依賴skia.

5 進入skia目錄,開啟skia.sln解決方案,開始編譯。

編譯中涉及的修改:

1 skia/config/skuserconfig.h中,加入#define sk_enable_libpng,支援png編碼器。

2 skia/ext/google_logging.cc中,去除以下內容,避免鏈結不過。

//logging::logmessage(file, line,

//                    fatal ? logging::log_fatal : logging::log_info).stream()

//    << msg;

3 third_party\zlib\zconf.h中,去掉#include "mozzconf.h",避免重新命名後鏈結不通過。

4 third_party\skia\include\core\sktypes.h中,如果報#include 無法找到,

直接新增#define sk_ignore_stdint_dot_h。

5 去掉libpng工程中的png_user_config定義,不需要向webkit_png_xx函式名的轉定義。

6 如果報libcmd和libmsvxx庫衝突,忽略掉libcmd。

測試**參考網路流傳的台灣人寫的文章。

**大致如下:

1 new bitmap, 獲取記憶體。

2 基於bitmap, new canvas。

3 new painter。

4 基於painter,在canvas上畫圖。

5 將bitmap存入乙個png。

成功執行後,會在工程的test目錄下,生成乙個snapshot.png。如下所示

STM32 ucLinux環境搭建

uclinux用到的資源 1 usblib安裝 configure disable udev make sudo make install 2 open ocd 安裝 sudo apt get install libtool autoconf automake texinfo configure p...

LinkGUI Air E32 搭建開發環境

編譯是在ubuntu系統裡進行的,需要先安裝ubuntu作業系統,可以整機安裝,也可以選擇用vmware虛擬器進行安裝。本文例子所選用vmware workstation的版本為15,ubuntu系統的版本為ubuntu 18.04 desktop amd64.iso 2 安裝samba及ssh 進...

ESP32環境搭建

1,按照虛擬機器vm 3,按照對應的虛擬機器 環境 1,esp需要的編譯環境 gcc,g 版本是5.2 2,crosstool ng是1.22.0 一,按照git指令 sudo add apt repository ppa git core ppasudo apt get updatesudo ap...