2015-04-03 64 views
1

我將我的x86 ubuntu 14.04目標上的qt4.7.4交叉編譯到aarch64 linux板,並且我成功了。如何交叉編譯qt4 for arm生成bin/lrelease和lib/libQtDesigner.so

但是,有一個問題:我找不到bin/lreleaselib/libQtDesigner.so等等。

我怎樣才能配置這個,所以我可以建立它們?

我的配置是這樣的:

export ROOTFS=/aarch64_2 
export CROSS_COMPILE=aarch64-unknown-linux-gnueabi 
export PKG_CONFIG_PATH=$ROOTFS/usr/local/lib/aarch64-linux-gnu/pkgconfig:$ROOTFS/usr/lib/aarch64-linux-gnu/pkgconfig:$ROOTFS/usr/lib/pkgconfig:$ROOTFS/usr/share/pkgconfig:$ROOTFS/usr/local/lib/pkgconfig:$ROOTFS/usr/local/share/pkgconfig 

./configure -release -v -fast -opensource 
-developer-build -confirm-license 
-nomake examples -nomake demos 
-nomake docs -nomake translations 
-no-openssl -webkit -no-qt3support 
-no-rpath -phonon -no-opengl 
-dbus -arch aarch64 -xplatform linux-g++-aarch64 -force-pkg-config 

和mkspecs/Linux的G ++ - aarch64/qmake.conf是:

MAKEFILE_GENERATOR = UNIX 
TARGET_PLATFORM  = unix 
TEMPLATE  = app 
CONFIG   += qt warn_on release incremental link_prl   gdb_dwarf_index 
QT += core gui 
QMAKE_INCREMENTAL_STYLE = sublib 


include(../common/g++.conf) 
include(../common/linux.conf) 


QMAKE_CC = $$(CROSS_COMPILE)-gcc 
QMAKE_CXX = aarch64-unknown-linux-gnueabi-g++ 
QMAKE_LINK = aarch64-unknown-linux-gnueabi-g++ 
QMAKE_LINK_SHLIB = aarch64-unknown-linux-gnueabi-g++ 
QMAKE_AR = $$(CROSS_COMPILE)-ar cr 
QMAKE_OBJCOPY = $$(CROSS_COMPILE)-objcopy 
QMAKE_STRIP = $$(CROSS_COMPILE)-strip 

QMAKE_LFLAGS_RELEASE = -Wl,-O2 
QMAKE_INCDIR += $$(ROOTFS)/usr/include 
QMAKE_INCDIR += $$(ROOTFS)/usr/include/aarch64-linux-gnu 

QMAKE_LIBDIR += $$(ROOTFS)/usr/lib 
QMAKE_LIBDIR += $$(ROOTFS)/usr/lib/aarch64-linux-gnu 
QMAKE_LIBDIR += $$(ROOTFS)/lib 
QMAKE_LIBDIR += $$(ROOTFS)/lib/aarch64-linux-gnu 


QMAKE_INCDIR_X11 = $$(ROOTFS)/usr/include 
QMAKE_LIBDIR_X11 = $$(ROOTFS)/usr/lib 

QMAKE_INCDIR_OPENGL = $$(ROOTFS)/usr/include 
QMAKE_LIBDIR_OPENGL = $$(ROOTFS)/usr/lib 

#QMAKE_CFLAGS  = -fpermissive 
QMAKE_LFLAGS  = -Wl,-rpath-link $$(ROOTFS)/usr/lib -Wl,-rpath-link  $$(ROOTFS)/usr/lib/aarch64-linux-gnu -Wl,-rpath-link $$(ROOTFS)/lib -Wl,-rpath-link $$(ROOTFS)/lib/aarch64-linux-gnu 

回答

1

最後,我知道爲什麼了。配置shell有一個註釋:在交叉編譯時不要默認構建工具。因此,如果我們正在交叉編譯並且我們想要編譯工具,只需在命令行添加-make工具即可。

+0

這對我來說並不適用於QT 5.10.1 – tofutim 2018-03-02 03:17:58