歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 終於把WebKit(基於GTK)移植到ARM上

終於把WebKit(基於GTK)移植到ARM上

日期:2017/3/1 11:17:45   编辑:Linux編程

DirectFB用的命令是:

./configure -host=arm-linux --prefix=$ROOTFS_DIR/usr --with-gfxdrivers=none --enable-sdl=no --disable-x11 "CFLAGS=-I$ROOTFS_DIR/usr/include" "LIBS=-L$ROOTFS_DIR/usr/lib -lz -ljpeg" && make && make install

glib-2.12.0:
export ARCH=arm
CC=$ARCH-linux-gcc
echo ac_cv_type_long_long=yes>>$ARCH-linux.cache
echo glib_cv_long_long_format=ll>>$ARCH-linux.cache
echo glib_cv_stack_grows=no>>$ARCH-linux.cache
echo glib_cv_uscore=no>>$ARCH-linux.cache
echo ac_cv_func_posix_getpwuid_r=yes>>$ARCH-linux.cache
./configure --prefix=$ROOTFS_DIR/usr --cache-file=$ARCH-linux.cache --build= i686-pc-linux-gnu --target=$ARCH-linux --host=$ARCH-linux && make && make install
glib在做configure時,如果還遇到test xxx過不去,打開configure,查找相應的符號XXX,輸入
echo XXX=no>>$ARCH-linux.cache no和yes看情況選吧

cairo-1.4.2
export ARCH=arm
CC=$ARCH-linux-gcc
export CFLAGS="-I$ROOTFS_DIR/usr/include"
export LDFLAGS="-L$ROOTFS_DIR/usr/lib"

./configure --prefix=$ROOTFS_DIR/usr --enable-directfb --disable-xlib --disable-win32 --enable-png --enable-freetype --enable-pdf --enable-ps --build= i686-pc-linux-gnu --target=$ARCH-linux --host=$ARCH-linux && make && make install

pango-1.16.2:
export ARCH=arm
CC=$ARCH-linux-gcc
export LDFLAGS="-L$ROOTFS_DIR/usr/lib -Wl,-rpath=$ROOTFS_DIR/usr/lib"
export FREETYPE_CONFIG=$ROOTFS_DIR/usr/bin/freetype-config

./configure --prefix=$ROOTFS_DIR/usr --build= i686-pc-linux-gnu --with-arch=$ARCH --without-x --target=$ARCH-linux --host=$ARCH-linux && make && make install
pango還是有點問題,字體顯示還不正常。

webkit的地方有一點改動

./configure --prefix=$ROOTFS_DIR/usr --with-target=directfb --without-x --build=i686-pc-linux-gnu --target=$ARCH-linux --host=$ARCH-linux CFLAGS=-I$ROOTFS_DIR/usr/include CPPFLAGS=-I$ROOTFS_DIR/usr/include

icu_config=$ROOTFS_DIR/usr && make && make install

1.可能出現缺少X11的頭文件,搜索下缺少的X11的文件,復制到$ROOTFS_DIR/usr/include下。
2.出現失敗信息關於 “u_charType_3_6”, 打開 libJavaScriptCore.la(跟autogen.sh 同一目錄下),在dependency_libs 行最末尾添加-licui18n。
繼續make
make install
編譯完成了在Program/.lib目錄下運行./Gtklauncher,就可以看到浏覽器窗口了。

幾點心得:

1.出問題多重啟,很多莫名其妙的問題,重啟後就解決了

2.哪個模塊遍布過去,刪掉該模塊和相關的模塊,重裝。

3.路徑問題很麻煩,要搞清本地路徑和遍到arm上路徑。

4.如果出現C compiler cannot create XXX 等錯誤,是因為c編譯器來回換出現的問題,重新登陸一個終端,如果還有這樣的問題,重啟就可以解決。

終於在離職前一天編完了,把這段時間工作畫上一個句號。雖然後續工作還有很多,已經和我無關了。webkit今後也許不會再接觸了。今後會不會再做it,會不會在上海,我也不知道。人生有太多不確定了,自己無法把握,索性就飄啊飄吧。

Copyright © Linux教程網 All Rights Reserved