Hello,
I am some kind stuck for few days, googling everything possible.
I try to cross-compile Qt 4.8.5 with
gcc-linaro-arm-linux-gnueabihf-4.8-2013.11. The configure step completes
well but make always fails with:
c:/program
files/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.11/bin/../arm-linux-gnueabihf/libc/usr/lib/arm-linux-gnueabihf/crt1.o:
In function `_start':
:(.text+0x28): undefined reference to
`main'./tmp\obj\release_shared\qthread_unix.obj: In function
`QThreadPrivate::createEventDispatcher(QThreadData*)'
:qthread_unix.cpp:(.text+0x2e4): undefined reference to
`QEventDispatcherGlib::QEventDispatcherGlib(QObject*)'
qthread_unix.cpp:(.text+0x374): undefined reference to
`QEventDispatcherGlib::versionSupported()'
./tmp\obj\release_shared\qbytearray.obj: In function `qUncompress(unsigned
charconst*, int)'
:qbytearray.cpp:(.text+0x4f0): undefined reference to `uncompress'
and so on...
Actually the make starts with corelib, compiles all files ad when try to
link -o ..\..\lib\libcorelib.a it fails.
It looks like the linker tries to make a app object instead of library.
My qmake.conf is as following:
#
# qmake configuration for building with arm-none-linux-gnueabi-g++
#
include(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)
include(../../common/qws.conf)
MAKEFILE_GENERATOR = MINGW
CONFIG += no_import_libs no_generated_target_info
# modifications to g++.conf
QMAKE_CC = arm-linux-gnueabihf-gcc
QMAKE_CXX = arm-linux-gnueabihf-g++
QMAKE_LINK = arm-linux-gnueabihf-g++
QMAKE_LINK_SHLIB = arm-linux-gnueabihf-g++
QMAKE_LIB = arm-linux-gnueabihf-ar
QMAKE_AR = arm-linux-gnueabihf-ar cqs
QMAKE_OBJCOPY = arm-linux-gnueabihf-objcopy
QMAKE_STRIP = arm-linux-gnueabihf-strip
QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -o $obj $src
QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src
QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
QMAKE_INCDIR =
QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
QMAKE_MOC = $$[QT_INSTALL_BINS]\\moc.exe
QMAKE_UIC = $$[QT_INSTALL_BINS]\\uic.exe
QMAKE_IDC = $$[QT_INSTALL_BINS]\\idc.exe
QMAKE_COPY = copy /y
QMAKE_COPY_DIR = xcopy /s /q /y /i
QMAKE_MOVE = move
QMAKE_DEL_FILE = del
QMAKE_MKDIR = mkdir
QMAKE_DEL_DIR = rmdir
QMAKE_CHK_DIR_EXISTS = if not exist
QMAKE_IDL = midl
QMAKE_ZIP = zip -r -9
# = -march=armv7-a -mtune=cortex-a8 -mthumb -mfpu=neon -mfloat-abi=softfp
-Wa,-mimplicit-it=thumb
ARM_CFLAGS = -march=armv7-a -mtune=cortex-a8 -mthumb -mfpu=neon
-mfloat-abi=hard
-Wa,-mimplicit-it=thumb -marm -mthumb-interwork
#ARM_CFLAGS = -march=armv7-a -mtune=cortex-a8
#TARGET_SYSROOT = C:\Program
Files\Linaro\gcc-linaro-arm-linux-gnueabihf-4.8-2013.11\arm-linux-gnueabihf\libc
#TARGET_QTDIR = C:\Qt-build\build
#modifications to gcc-base.conf
QMAKE_CFLAGS += $$ARM_CFLAGS
QMAKE_CXXFLAGS += $$ARM_CFLAGS
#QMAKE_CFLAGS_RELEASE += $$ARM_CFLAGS
#QMAKE_CXXFLAGS_RELEASE += $$ARM_CFLAGS
QMAKE_LIBS += -lrt -lpthread -ldl
QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$$[QT_INSTALL_LIBS]
!isEmpty(TARGET_QTDIR) {
QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${TARGET_QTDIR}/lib
}
!isEmpty(TARGET_SYSROOT) {
QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${TARGET_SYSROOT}/lib:$${
TARGET_SYSROOT}/usr/lib
QMAKE_LFLAGS += -Wl,--dynamic-linker=$${TARGET_SYSROOT}/lib/ld-
linux.so.3
}
And the configure has the following options:
-fast -release -prefix C:\Qt-build\build -opensource -confirm-license
-no-phonon
-xplatform qws/linux-arm-gnueabi-g++ -embedded -arch arm -neon -no-mmx -no-
3dnow -no-opengl -no-sse -no-sse2 -no-cups -no-accessibility -no-openssl -
little-endian -no-webkit -no-qt3support -no-vcproj -no-dsp -nomake examples
-nomake demos -nomake docs -nomake translations
Any help will be greatly appreciated
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.