[webkit-dev] Does Webkit support cross-compilation?
Charles Woloszynski
charles.woloszynski at innocon.com
Thu Oct 25 16:30:35 PDT 2007
I am trying to get webkit/qt built for a PPC processor, using a cross-
compiler. I have Qt cross-compiled and running on the target machine.
When I try to build the webkti for the PPC, I get an error with
dftables. Apparently, the build routine cross-compiled it instead of
building it for the host platform. I am guessing that I did not set
up something correctly. Below is the output and the QMAKESPEC. I
don't see how to set it up to know about a cross-compilation.
Any suggestions is greatly appreciated.
Charlie
charlie at woloszynski-pvm:~> export QMAKESPEC=/home/charlie/qtopia-
build/qtopia-core-opensource-src-4.3.2/mkspecs/qws/linux-ppc_82xx-g++/
charlie at woloszynski-pvm:~> export QTDIR=/home/charlie/qtopia-build/
qtopia-core-opensource-src-4.3.2/
charlie at woloszynski-pvm:~> export CROSS_COMPILE=ppc_82xx-
charlie at woloszynski-pvm:~> cd webkit-build/
charlie at woloszynski-pvm:~/webkit-build> ./WebKit/WebKitTools/Scripts/
build-webkit -qt --qmake=/home/charlie/qtopia-build/qtopia-core-
opensource-src-4.3.2/bin/qmake
Calling '/home/charlie/qtopia-build/qtopia-core-opensource-src-4.3.2/
bin/qmake CONFIG+=qt-port -r OUTPUT_DIR=/home/charlie/webkit-build/
WebKit/WebKitBuild/Release /home/charlie/webkit-build/WebKit/
WebKit.pro CONFIG+=release CONFIG-=debug' in /home/charlie/webkit-
build/WebKit/WebKitBuild/Release ...
Reading /home/charlie/webkit-build/WebKit/WebKit/qt/Plugins/
Plugins.pro [/home/charlie/webkit-build/WebKit/WebKitBuild/Release//
WebKit/qt/Plugins]
Reading /home/charlie/webkit-build/WebKit/JavaScriptCore/pcre/
dftables.pro [/home/charlie/webkit-build/WebKit/WebKitBuild/Release//
JavaScriptCore/pcre]
Reading /home/charlie/webkit-build/WebKit/WebCore/WebCore.pro [/home/
charlie/webkit-build/WebKit/WebKitBuild/Release//WebCore]
Reading /home/charlie/webkit-build/WebKit/JavaScriptCore/kjs/
testkjs.pro [/home/charlie/webkit-build/WebKit/WebKitBuild/Release//
JavaScriptCore/kjs]
Reading /home/charlie/webkit-build/WebKit/WebKit/qt/QtLauncher/
QtLauncher.pro [/home/charlie/webkit-build/WebKit/WebKitBuild/
Release//WebKit/qt/QtLauncher]
Reading /home/charlie/webkit-build/WebKit/WebKitTools/DumpRenderTree/
qt/DumpRenderTree.pro [/home/charlie/webkit-build/WebKit/WebKitBuild/
Release//WebKitTools/DumpRenderTree/qt]
cd WebKit/qt/Plugins/ && make -f Makefile
make[1]: Entering directory `/home/charlie/webkit-build/WebKit/
WebKitBuild/Release/WebKit/qt/Plugins'
ppc_82xx-g++ -c -pipe -O2 -D_REENTRANT -Wall -W -fPIC -DQT_NO_DEBUG -
DQT_STATICPLUGIN -DQT_PLUGIN -DQT_GUI_LIB -DQT_NETWORK_LIB -
DQT_CORE_LIB -DQT_SHARED -I/home/charlie/qtopia-build/qtopia-core-
opensource-src-4.3.2/mkspecs/qws/linux-ppc_82xx-g++ -I/home/charlie/
webkit-build/WebKit/WebKit/qt/Plugins -I/home/charlie/qtopia-build/
qtopia-core-opensource-src-4.3.2/include/QtCore -I/home/charlie/
qtopia-build/qtopia-core-opensource-src-4.3.2/include/QtCore -I/home/
charlie/qtopia-build/qtopia-core-opensource-src-4.3.2/include/
QtNetwork -I/home/charlie/qtopia-build/qtopia-core-opensource-
src-4.3.2/include/QtNetwork -I/home/charlie/qtopia-build/qtopia-core-
opensource-src-4.3.2/include/QtGui -I/home/charlie/qtopia-build/
qtopia-core-opensource-src-4.3.2/include/QtGui -I/home/charlie/qtopia-
build/qtopia-core-opensource-src-4.3.2/include -I/home/charlie/webkit-
build/WebKit/WebKit/qt/Plugins -I/home/charlie/webkit-build/WebKit/
WebKit/qt/Plugins -I. -o ICOHandler.o /home/charlie/webkit-build/
WebKit/WebKit/qt/Plugins/ICOHandler.cpp
rm -f libqtwebico.a
ar cqs libqtwebico.a ICOHandler.o
make[1]: Leaving directory `/home/charlie/webkit-build/WebKit/
WebKitBuild/Release/WebKit/qt/Plugins'
cd JavaScriptCore/pcre/ && make -f Makefile.dftables
make[1]: Entering directory `/home/charlie/webkit-build/WebKit/
WebKitBuild/Release/JavaScriptCore/pcre'
ppc_82xx-gcc -c -pipe -O2 -Wall -W -DBUILDING_QT__ -I/home/charlie/
qtopia-build/qtopia-core-opensource-src-4.3.2/mkspecs/qws/linux-
ppc_82xx-g++ -I../../../../JavaScriptCore/pcre -I../../../../
JavaScriptCore/wtf -I../../../../JavaScriptCore/pcre -I. -o
dftables.o ../../../../JavaScriptCore/pcre/dftables.c
ppc_82xx-g++ -Wl,-rpath,/usr/local/Trolltech/QtopiaCore-4.3.2-generic/
lib -o tmp/dftables dftables.o
make[1]: Leaving directory `/home/charlie/webkit-build/WebKit/
WebKitBuild/Release/JavaScriptCore/pcre'
cd WebCore/ && make -f Makefile
make[1]: Entering directory `/home/charlie/webkit-build/WebKit/
WebKitBuild/Release/WebCore'
/home/charlie/webkit-build/WebKit/WebKitBuild/Release/JavaScriptCore/
pcre/tmp/dftables tmp/chartables.c
/home/charlie/webkit-build/WebKit/WebKitBuild/Release/JavaScriptCore/
pcre/tmp/dftables: /home/charlie/webkit-build/WebKit/WebKitBuild/
Release/JavaScriptCore/pcre/tmp/dftables: cannot execute binary file
make[1]: *** [tmp/chartables.c] Error 126
make[1]: Leaving directory `/home/charlie/webkit-build/WebKit/
WebKitBuild/Release/WebCore'
make: *** [sub-WebCore-make_default-ordered] Error 2
=========== qmake.conf
#
# qmake configuration for linux-g++
#
MAKEFILE_GENERATOR = UNIX
TEMPLATE = app
CONFIG += qt link_prl
QT += core gui network
QMAKE_INCREMENTAL_STYLE = sublib
QMAKE_CC = $(CROSS_COMPILE)gcc
QMAKE_LEX = flex
QMAKE_LEXFLAGS =
QMAKE_YACC = yacc
QMAKE_YACCFLAGS = -d
QMAKE_CFLAGS = -pipe
QMAKE_CFLAGS_WARN_ON = -Wall -W
QMAKE_CFLAGS_WARN_OFF =
QMAKE_CFLAGS_RELEASE = -O2
QMAKE_CFLAGS_DEBUG = -g
QMAKE_CFLAGS_SHLIB = -fPIC
QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
QMAKE_CFLAGS_THREAD = -D_REENTRANT
QMAKE_CFLAGS_HIDESYMS = -fvisibility=hidden
QMAKE_CXX = $(CROSS_COMPILE)g++
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
QMAKE_CXXFLAGS_SHLIB = $$QMAKE_CFLAGS_SHLIB
QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
QMAKE_CXXFLAGS_HIDESYMS = $$QMAKE_CFLAGS_HIDESYMS -fvisibility-
inlines-hidden
QMAKE_INCDIR =
QMAKE_LIBDIR =
QMAKE_INCDIR_X11 =
QMAKE_LIBDIR_X11 =
QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
QMAKE_INCDIR_OPENGL =
QMAKE_LIBDIR_OPENGL =
QMAKE_INCDIR_QTOPIA = $(QPEDIR)/include/
QMAKE_LIBDIR_QTOPIA = $(QPEDIR)/lib
QMAKE_LINK = $(CROSS_COMPILE)g++
QMAKE_LINK_SHLIB = $(CROSS_COMPILE)g++
QMAKE_LFLAGS =
QMAKE_LFLAGS_RELEASE =
QMAKE_LFLAGS_DEBUG =
QMAKE_LFLAGS_SHLIB = -shared
QMAKE_LFLAGS_PLUGIN = $$QMAKE_LFLAGS_SHLIB
QMAKE_LFLAGS_SONAME = -Wl,-soname,
QMAKE_LFLAGS_THREAD =
QMAKE_RPATH = -Wl,-rpath,
QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 =
QMAKE_LIBS_X11SM =
QMAKE_LIBS_QT = -lqte
QMAKE_LIBS_QT_THREAD = -lqte-mt
QMAKE_LIBS_QT_OPENGL = -lqgl
QMAKE_LIBS_QTOPIA = -lqtopia -lqpe
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_OPENGL =
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
QMAKE_AR = ar cqs
QMAKE_RANLIB =
QMAKE_TAR = tar -cf
QMAKE_GZIP = gzip -9f
QMAKE_COPY = cp -f
QMAKE_MOVE = mv -f
QMAKE_DEL_FILE = rm -f
QMAKE_DEL_DIR = rmdir
QMAKE_STRIP = $(CROSS_COMPILE)strip
QMAKE_CHK_DIR_EXISTS = test -d
QMAKE_MKDIR = mkdir -p
include(../../common/unix.conf)
load(qt_config)
More information about the webkit-dev
mailing list