qtwebkit編譯
1. 新人求教,急.qt4.8.6無法編譯
認真核對操作步驟:
1、修改環境變數工具推薦:Rapid Environment Editor。
修改前請先備份當前的環境變數。然後:
(1)檢查系統變數path,刪除有關mingw其他版本等信息,以免與後續的mingw32-make沖突。
(2)檢查用戶變數INCLUDE、LIB、PATH、MSDevDir和MSVCDir,刪除有關\Microsoft Visual Studio\VC98的信息,因為它們會與後續的mingw32-make沖突,導致編譯出錯。
2、在電腦上安裝mingw編譯器,假設路徑安裝在C:\Qt\mingw32。將C:\Qt\mingw32\bin添加進環境變數path,打開DOS命令行輸入gcc --version和g++ --version和mingw32-make --version驗證編譯器安裝成功。我用的MinGW版本是V4.8.2,
3、解壓qt-everywhere-opensource-src-4.8.6.zip並進入目錄。例如:D:\qt-everywhere-opensource-src-4.8.6\
4、依次執行以下DOS命令:
(1)configure -debug-and-release -opensource -prefix "D:\Qt4.8.6" -platform win32-g++ -nomake demos -nomake examples
常見的使用選項說明:
-debug-and-release 編譯debug和release版
-opensource 選擇開源協議並確認
-platform win32-g++ 使用mingw編譯
-prefix "D:\Qt4.8.6" 指定編譯結果目錄,如果未指定則默認當前
-shared 創建和使用共享Qt庫
-static 創建和使用靜態Qt庫
-nomake demos -nomake examples 不編譯常式
-nomake tests 不編譯tests
-skip qtwebkit 忽略qtwebkit,因為編譯它特別消耗時間
-mp 使用多核優化編譯
(2)mingw32-make
(3)mingw32-make install
5、編譯完成後,把C:\Qt\mingw32\bin\路徑下的三個文件libgcc_s_dw2-1.dll、libstdc++-6.dll和libwinpthread-1.dll拷貝到D:\qt-everywhere-opensource-src-4.8.6\bin\。另外,也請把步驟1備份的環境變數還原。
6、修改Qt安裝路徑
最初編譯時選擇的路徑是D:\Qt4.8.6\。如果想將它復制到其他盤符,並且改名,例如:C:\Qt\4.8.6_MinGW。這樣一來會有問題嗎?是的,會有問題,因為Qt有絕對路徑依賴症。改名後C:\Qt\4.8.6_MinGW\bin\的exe執行程序都會出問題,要麼程序打不開,要麼多國語言發生異常。用記事本打開C:\Qt\4.8.6_MinGW\bin\qmake.exe,查找關鍵字「qt_prfxpath」,可以看到裡面含有原始的安裝路徑。我們不可以手動去修改qmake.exe,真正有效的解決方法是:
在C:\Qt\4.8.6_MinGW\bin\路徑下創建一個qt.conf文件,內容為
[paths]
Prefix = C:/Qt/4.8.6_MinGW
請注意:qt.conf文件必須是ANSI格式,並且Prefix的斜杠風格採取的是linux的,而非Windows,否則會失效。或者使用"Prefix = .. ",如此一來,任意路徑有效。
2. 編譯Qt 4.7.3在GCC 4.6 MinGW問題,怎麼解決
認真核操作步驟:
1、修改環境變數工具推薦:Rapid Environment Editor
修改前請先備份前環境變數:
(1)檢查系統變數path刪除關mingw其版本等信息免與續mingw32-make沖突
(2)檢查用戶變數INCLUDE、LIB、PATH、MSDevDirMSVCDir刪除關\Microsoft Visual Studio\VC98信息與續mingw32-make沖突導致編譯錯
2、????電腦安裝mingw編譯器假設路徑安裝C:\Qt\mingw32C:\Qt\mingw32\bin添加進環境變數path打DOS命令行輸入gcc --versiong++ --versionmingw32-make --version驗證編譯器安裝功我用MinGW版本V4.8.2
3、解壓qt-everywhere-opensource-src-4.8.6.zip並進入目錄例:D:\qt-everywhere-opensource-src-4.8.6\
4、依執行DOS命令:
(1)configure -debug-and-release -opensource -prefix "D:\Qt4.8.6" -platform win32-g++ -nomake demos -nomake examples
見使用選項說明:
-debug-and-release 編譯debugrelease版
-opensource 選擇源協議並確認
-platform win32-g++ 使用mingw編譯
-prefix "D:\Qt4.8.6" 指定編譯結目錄,未指定則默認前
-shared 創建使用共享Qt庫
-static 創建使用靜態Qt庫
-nomake demos -nomake examples 編譯常式
-nomake tests 編譯tests
-skip qtwebkit 忽略qtwebkit編譯特別消耗間
-mp 使用核優化編譯
(2)mingw32-make
(3)mingw32-make install
5、編譯完C:\Qt\mingw32\bin\路徑三文件libgcc_s_dw2-1.dll、libstdc++-6.dlllibwinpthread-1.dll拷貝D:\qt-everywhere-opensource-src-4.8.6\bin\另外請步驟1備份環境變數原
6、修改Qt安裝路徑
初編譯選擇路徑D:\Qt4.8.6\想復制其盤符並且改名例:C:\Qt\4.8.6_MinGW問題問題Qt絕路徑依賴症改名C:\Qt\4.8.6_MinGW\bin\exe執行程序都問題要程序打要語言發異用記事本打C:\Qt\4.8.6_MinGW\bin\qmake.exe查找關鍵字qt_prfxpath看面含原始安裝路徑我手修改qmake.exe真效解決:
C:\Qt\4.8.6_MinGW\bin\路徑創建qt.conf文件內容
[paths]
Prefix = C:/Qt/4.8.6_MinGW
請注意:qt.conf文件必須ANSI格式並且Prefix斜杠風格採取Linux非Windows否則失效或者使用"Prefix = .. "任意路徑效
3. 裝了最新的qt4.8 for win,為什麼qtwebkit還是不支持html5 的audio標簽,難道是需要編譯選項
5htpg
4. 求QT5.0以上的任何一個版本靜態編譯結果,帶webkit
WebKit是一個開源的瀏覽器引擎,與之相應的引擎有Gecko(MozillaFirefox等使用的排版引擎)和Trident(也稱為MSHTML,IE使用的排版引擎)。同時WebKit也是蘋果MacOSX系統引擎框架版本的名稱,主要用於Safari,Dashboard,Mail和其他一些MacOSX程序。WebKit所包含的WebCore排版引擎和JSCore引擎來自於KDE的KHTML和KJS,當年蘋果比較了Gecko和KHTML後,仍然選擇了後者,就因為它擁有清晰的源碼結構、極快的渲染速度。
5. 怎麼編譯自己的WebKit
可以,直接下載Webkit 在編譯的時候 選擇編譯for Qt 就行了。 但是 先提醒你,Webkit 是我見過所有的庫中,最難編譯的。做好心理准備。50個人編譯Webkit 會有50個不同的錯誤。
6. 如何重新單獨編譯QtWebkit
可以,直接下載Webkit 在編譯的時候 選擇編譯for Qt 就行了。 但是 先提醒你,Webkit 是我見過所有的庫中,最難編譯的。做好心理准備。50個人編譯Webkit 會有50個不同的錯誤。
7. linux 怎樣搭建qtwebkit使用的gstreamer
花了一天事件, 終於編譯出了支持gstreamer的qtwebkit, 可以開始html5 的<video><audio>之旅了。
1. 編譯libxml2
下載libxml2-sources-2.7.6.tar.gz
解包後在當前目錄下編寫如下編譯腳本:(當然,不用腳本也行,你可以直接執行)
CC=arm-none-linux-gnueabi-gcc ./configure --build=i686-linux --host=arm-none-linux --prefix=/home/work/dist --without-python
make && make install
2. 編譯zlib, 這個太common,我不啰嗦了, glib-2.0要依賴的。
3. 編譯glib-2.0
下載glib-2.24.2.tar.bz2, 解包, 這個版本的依賴庫很少, 竟然只需要zlib。
老版本需要的libconv, gettext等均不需要了。
同樣, 編寫編譯腳本:
CC=arm-none-linux-gnueabi-gcc ./configure --build=i686-linux --host=arm-none-linux \
--prefix=/home/work/dist \
CFLAGS="-I/home/work/dist/include -L/home/work/dist/lib" \
glib_cv_stack_grows=no glib_cv_uscore=no ac_cv_func_posix_getpwuid_r=yes \
ac_cv_func_posix_getgrgid_r=yes ac_cv_lib_rt_clock_gettime=no glib_cv_monotonic_clock=yes
make && make install
4. 編譯gstreamer
下載gstreamer-0.10.35.tar.gz, 這個是0.10版本裡面最新的了。
編譯腳本:
CC=arm-none-linux-gnueabi-gcc PKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig ./configure --build=i686-linux --host=arm-none-linux \
--prefix=/home/work/dist CFLAGS=-I/home/work/dist/include --disable-registry --disable-loadsave --disable-gtk-doc \
ac_cv_func_register_printf_function=no --disable-tests --disable-valgrind --disable-debug --disable-gst-debug
make && make install
5. 編譯gst plugins base
下載gst-plugins-base-0.10.35.tar.gz。
編譯腳本:
CC=arm-none-linux-gnueabi-gcc PKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig ./configure --build=i686-linux --host=arm-none-linux \
--prefix=/home/work/dist CFLAGS=-I/home/work/dist/include --disable-valgrind --disable-x --disable-gnome_vfs --disable-alsa --disable-ogg --disable-pango --disable-theora --disable-vorbis --disable-examples
make && make install
好了, 萬事具備, 只欠東風了。接下來開始編譯Qt
Qt的配置文件很復雜, 我就不寫出來了, 就是要注意這三點:
1. 在Qt 的configure 時加上-force-pkg-config, 否則會在WebCore的feature.pri中檢查時報"Disabling video e the lack of GLib/Gio/GStreamer.",
也就是說會不支持video.
具體可以看這個pri片段:
!contains(QT_CONFIG, no-pkg-config):system(pkg-config --exists glib-2.0 gio-2.0 gstreamer-0.10): {
DEFINES -= ENABLE_VIDEO=0
DEFINES += ENABLE_VIDEO=1
DEFINES += WTF_USE_GSTREAMER=1
DEFINES -= WTF_USE_GSTREAMER=0
} else {
message("Disabling video e the lack of GLib/Gio/GStreamer.")
DEFINES -= ENABLE_VIDEO=1
DEFINES += ENABLE_VIDEO=0
}
如果不指定-force-pkg-config, 就會被當作no-pkg-config.
2. 為configure指定:PKG_CONFIG_PATH=/home/work/dist/lib/pkgconfig, 否則也會diabling video
3. 為了讓webkit庫能找到gstreamer等庫, 還需要在webkit.pro中加上
轉載,僅供參考。
8. QT靜態庫編譯問題,增加webkit後不能使用靜態庫
有可能是webkit不支持靜態編譯吧 qt開源版好像對靜態編譯有限制
9. 請教Qt高手:我安裝Qt4.7.4後不能使用QWebKit,原文如下,如能幫助,不勝感激。對了,我用的是Win7
你可以嘗試下面的步驟。
1、你需要檢查你qt版本的配置是否OK?
首先你需要打開Qt creator,依次點擊 工具》選項》Qt 4,然後在右側窗體中進行版本設置。確認設置無誤後,再點擊確定按鈕。
2、打開你當前的工程,點擊左側項目一欄,然後選擇合適的qt版本並進行重新編譯。