Monday, 29 July 2019

Beaglebone Black, Debian, QT and EGL (QT 5.12.X) as: 2019-July

Debian Stretch., Latest QT running on BBB

 

Follow this link for working version updated 2019 July.

                                    or

Buy a preloaded bootable SD-card from here

The post is obsolette


Prerequisites: 



  • Get default QT 5.7.X running on BBB
    • ssh to BBB
    • Backup for any faulty ongoing /usr /etc /lib

cd /opt/scripts/tools
sudo ./grow_partition.sh
sudo reboot

cd
mkdir system
sudo rsync -ra {/usr,/lib,/etc} ./system


  • Install default debian QT EGL and QT 7.X packages


sudo apt-get install qt5-default
sudo apt-get install libqt5qml5
sudo apt-get install qml-module-qtquick-controls
sudo apt-get install qt5-default qtdeclarative5-dev
sudo apt-get install qtquickcontrols5-example
s
sudo reboot
sudo apt-get install ti-sgx-ti335x-modules-`uname -r` && sudo reboot
  • EGL restoration
    • eglinfo
      • this would fail
      •  
    • Restore etc.
      • On my system I restored only ld.so.cache and egl came back to life
sudo cp ./system/etc/ld.so.cache /etc/


  • Errors
    • eglinfo ends up with these
      •  EGL_TRANSPARENT_BLUE_VALUE = 0x0

        Creating Window surface..
        PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Invalid argument [0, ]
        Unable to create surface
            egl error 'EGL_BAD_ALLOC' (0x3003)
    •  eglingo after you plugged in a better display should end like this

ize_array GL_OES_matrix_palette GL_OES_draw_texture GL_OES_query_matrix GL_OES_texture_env_crossbar GL_OES_texture_mirrored_repeat GL_OES_texture_cube_map GL_OES_blend_subtract GL_OES_blend_func_separate GL_OES_blend_equation_separate GL_OES_stencil_wrap GL_OES_extended_matrix_palette GL_OES_framebuffer_object GL_OES_rgb8_rgba8 GL_OES_depth24 GL_OES_stencil8 GL_OES_compressed_ETC1_RGB8_texture GL_OES_mapbuffer GL_OES_EGL_image GL_OES_EGL_image_external GL_EXT_multi_draw_arrays GL_OES_required_internalformat GL_IMG_read_format GL_IMG_texture_compression_pvrtc GL_IMG_texture_format_BGRA8888 GL_EXT_texture_format_BGRA8888 GL_OES_egl_sync GL_IMG_vertex_array_object GL_APPLE_texture_2D_limited_npot
GLES Integer Information :
 GL_MAX_LIGHTS =  0x8
 GL_MAX_CLIP_PLANES =  0x6
 GL_MAX_MODELVIEW_STACK_DEPTH =  0x10
 GL_MAX_PROJECTION_STACK_DEPTH =  0x2
 GL_MAX_TEXTURE_STACK_DEPTH =  0x4
 GL_SUBPIXEL_BITS =  0x4
 GL_MAX_TEXTURE_SIZE =  0x800
 GL_MAX_VIEWPORT_DIMS =  0x800  0x800
 GL_MAX_TEXTURE_UNITS =  0x4
 GL_NUM_COMPRESSED_TEXTURE_FORMATS =  0xf
GLES Float Information :
 GL_ALIASED_POINT_SIZE_RANGE =  1.000000  32.000000
 GL_SMOOTH_POINT_SIZE_RANGE =  1.000000  1.000000
 GL_ALIASED_LINE_WIDTH_RANGE =  1.000000  16.000000
 GL_SMOOTH_LINE_WIDTH_RANGE =  1.000000  1.000000



  • Test egl triangles
    • gles<TAB>

debian@beaglebone:~$ which gles2test1
/usr/bin/gles2test1
cd /usr/bin
debian@beaglebone:/usr/bin$ ./gles2test1 xxx

  • You should see these.
http://173.249.22.226/uploads/MAH06597.MP







Testing QT




You can test several examples



cd /usr/lib/arm-linux-gnueabihf/qt5/examples/quickcontrols/controls$

./uiforms/uiforms

./touch/touch




http://173.249.22.226/uploads/MAH06599.MP4


cd /usr/lib/arm-linux-gnueabihf/qt5/examples/quickcontrols/extras/dashboard$

qmake

make

./dashboard

http://173.249.22.226/uploads/MAH06598.MP4


So far so good, but we are restricted to



import QtQuick 2.2
import QtQuick.Window 2.1
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
import QtQuick.Extras 1.4



To take advantage of higher QUick controls like

QtQuick 2.12 & QtQuick.Controls 2.5 & QtQuick.Layouts 1.12


we would upgrade QT ro 5.12.4. This is matching my latest QT Creator based version.




See this post for chroot setup and build


=====  STOP HERE ====



The cross compiler has to many bugs and was a waste of time...


To continue goto this post

See this post for chroot setup and build


or you can buy a preloaded sdcard from here

The rest of this post was left for reference




On PC x86 ubuntu 18.




Prepare a path whre you would clone qt5. Make sure you dont have spaces, dashes underscores numbers in your full path to qt5, to 'Folder'
Better have something like
QTBBB
ROOTFS
TC741
qt5

The script which takes the ToolChain Setup was taken form here. Here is a copy of it for conveninence in case the link goes out.



if ! pushd "$CACHE" ; then exit 1; fi

wget -nc -O "gcc-arm-linux-gnueabihf.tar.xz" "https://releases.linaro.org/components/toolchain/binaries/latest-7/arm-linux-gnueabihf/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz"

gccdir=(gcc-*arm-linux-gnueabihf)
if ! [ -e "${gccdir[0]}" ]; then
tar -xvf "gcc-arm-linux-gnueabihf.tar.xz"
fi

popd

#--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---

unset LDFLAGS

export ARCH=arm
export SDK_PATH_NATIVE=$(realpath "$CACHE"/gcc-*arm-linux-gnueabihf)

export SDK_PATH_TARGET=$(realpath "$SYSROOT")
export TOOLCHAIN_SYS="arm-linux-gnueabihf"
export TOOLCHAIN_PREFIX="$SDK_PATH_NATIVE/bin/$TOOLCHAIN_SYS-"

export PATH="$SDK_PATH_NATIVE/bin:$PATH"

export PKG_CONFIG_SYSROOT_DIR=
export PKG_CONFIG_LIBDIR="$SDK_PATH_TARGET/usr/lib/pkgconfig:$SDK_PATH_TARGET/usr/lib/arm-linux-gnueabihf/pkgconfig"

export CONFIGURE_FLAGS=" --with-libtool-sysroot=$SDK_PATH_TARGET"
export CFLAGS=" --sysroot=$SDK_PATH_TARGET"
export CPPFLAGS=$CFLAGS
export CXXFLAGS=$CFLAGS
export LDFLAGS=" --sysroot=$SDK_PATH_TARGET"
export LDFLAGS="$LDFLAGS -Wl,-rpath-link,$SDK_PATH_TARGET/lib/arm-linux-gnueabihf"
export LDFLAGS="$LDFLAGS -Wl,-rpath-link,$SDK_PATH_TARGET/usr/lib/arm-linux-gnueabihf"

export CHOST=$TOOLCHAIN_SYS

export CC="$TOOLCHAIN_PREFIX"gcc
export CXX="$TOOLCHAIN_PREFIX"g++
export AR="$TOOLCHAIN_PREFIX"ar
export CROSS_COMPILE="$TOOLCHAIN_PREFIX"

export NJ="-j$(nproc)"



rename the toolcahin folder to TC741
Get the SDcard from BBB and make a copy of the root file system to ROOTFS

cd <path_no_space_no_dash_to>/QTBBB

mkdir TC741

sudo rsync -rav /media/$USER/rootfs/ ./TC741/



Grab QT5

git clone git://code.qt.io/qt/qt5.git

git checkout 5.12

perl init-repository



So Far the folders should be

BBB
├── qt5
├── ROOTFS
├── TC741
└── tc_setup.sh



Optional Tweak #1 (If there are errors regarding libdl)

cd ROOTFS

ln -sf ./lib/arm-linux-gnueabihf/librt.so.1 ./usr/lib/arm-linux-gnueabihf/librt.so

ln -sf ./lib/arm-linux-gnueabihf/libdl.so.2 ./usr/lib/arm-linux-gnueabihf/libdl.so

ln -sf ./lib/arm-linux-gnueabihf/libglib-2.0.so.0 ./usr/lib/arm-linux-gnueabihf/libglib-2.0.so

ln -sf ./lib/arm-linux-gnueabihf/libm.so.6 ./usr/lib/arm-linux-gnueabihf/libm.so


MkSpecs

Overwrite /qt5/qtbase/mksoecs/device/qmake.conf with this



#
# qmake configuration for the BeagleBoard and BeagleBoard xM boards
# http://beagleboard.org/

MAKEFILE_GENERATOR = UNIX
CONFIG += incremental
QMAKE_INCREMENTAL_STYLE = sublib

include(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)

load(device_config)

QT_QPA_DEFAULT_PLATFORM = eglfs

# modifications to g++.conf
QMAKE_CC = $${CROSS_COMPILE}gcc
QMAKE_CXX = $${CROSS_COMPILE}g++
QMAKE_LINK = $${QMAKE_CXX}
QMAKE_LINK_SHLIB = $${QMAKE_CXX}

# modifications to linux.conf
QMAKE_AR = $${CROSS_COMPILE}ar cqs
QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
QMAKE_NM = $${CROSS_COMPILE}nm -P
QMAKE_STRIP = $${CROSS_COMPILE}strip

COMPILER_FLAGS = -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mthumb -fPIC
#modifications to gcc-base.conf
QMAKE_CFLAGS += $${COMPILER_FLAGS}
QMAKE_CXXFLAGS += $${COMPILER_FLAGS}
QMAKE_CXXFLAGS_RELEASE += -O3

# ROOT_FS
# mco-mco
# SET(LDFLAGS "-Wl,-rpath-link,$(ROOT_FS)/lib/arm-linux-gnueabihf")
# mco-mco


# /usr/lib/arm-linux-gnueabihf/
#./usr/lib/arm-linux-gnueabihf/libxcb.so.1
# ./lib/libxcb.so.1

QMAKE_LFLAGS += "-Wl,-rpath-link,$(ROOT_FS)/lib/arm-linux-gnueabihf,-rpath-link,$(ROOT_FS)/usr/lib/arm-linux-gnueabihf"
QMAKE_LFLAGS += -L$(ROOT_FS)/lib
QMAKE_LFLAGS += -L$(ROOT_FS)/lib/arm-linux-gnueabihf
QMAKE_LFLAGS += -L$(ROOT_FS)/usr/lib
QMAKE_LFLAGS += -L$(ROOT_FS)/usr/lib/arm-linux-gnueabihf

QMAKE_LIBS += -lrt -lpthread -ldl -fPIC

# Extra stuff (OpenGL, DirectFB, ...)
QMAKE_INCDIR_EGL = $(ROOT_FS)/usr/include
QMAKE_INCDIR_EGL += $(ROOT_FS)/usr/include/GL
QMAKE_INCDIR_EGL += $(ROOT_FS)/usr/include/GLES
QMAKE_INCDIR_EGL += $(ROOT_FS)/usr/include/GLES2
QMAKE_INCDIR_EGL += $(ROOT_FS)/usr/include/EGL
QMAKE_LIBDIR_EGL += $(ROOT_FS)/usr/lib/arm-linux-gnueabihf/
QMAKE_LIBDIR_EGL += $(ROOT_FS)/usr/lib
QMAKE_LIBDIR_EGL += $(ROOT_FS)/lib/


QMAKE_INCDIR_OPENGL_ES2 = $${QMAKE_INCDIR_EGL}
QMAKE_LIBDIR_OPENGL_ES2 = $${QMAKE_LIBDIR_EGL}
QMAKE_INCDIR_OPENVG = $${QMAKE_INCDIR_EGL}
QMAKE_LIBDIR_OPENVG = $${QMAKE_LIBDIR_EGL}

QMAKE_LIBS_EGL = -lEGL -lIMGegl -lsrv_um
QMAKE_LIBS_OPENGL_ES2 = -lGLESv2 $${QMAKE_LIBS_EGL}
QMAKE_LIBS_OPENVG =
# -lOpenVG $${QMAKE_LIBS_EGL}

DISTRO_OPTS += hard-float

# No need for any special EGL device integration.
# Prioritize the default, compiled-in integration over any plugins.
EGLFS_DEVICE_INTEGRATION = none

include(../common/linux_arm_device_post.conf)

load(qt_config)


Configure

Make a script o_configure.sh to BBB folder. Paste this content.



#!/bin/bash


#./mkspecs/devices/linux-beagleboard-g++/
BBB_SDK=$(pwd)

pushd qt5

git clean -dfx

export ROOT_FS=$BBB_SDK/ROOTFS
export PATH=${BBB_SDK}/TC741/bin/:$PATH:$ROOT_FS/lib/arm-linux-gnueabihf
export LD_LIBRARY_PATH=$ROOT_FS/usr/lib/arm-linux-gnueabihf:$ROOT_FS/lib/arm-linux-gnueabihf:$LD_LIBRARY_PATH:
export LDFLAGS='-L$ROOT_FS/usr/lib/arm-linux-gnueabihf -L$ROOT_FS/lib/arm-linux-gnueabihf'
export CFLAGS='-L$ROOT_FS/usr/lib/arm-linux-gnueabihf -L$ROOT_FS/lib/arm-linux-gnueabihf'
export BBB_TC=arm-linux-gnueabihf-
echo $PATH

#./configure -platform linux-g++ -opengl es2 -device linux-beagleboard-g++ -device-option CROSS_COMPILE=$BBB_TC -sysroot $ROOT_FS -opensource -confirm-license -make libs -prefix $ROOT_FS -extprefix $ROOT_FS -hostprefix $ROOT_FS -v -no-gbm --enable-static --enable-shared

./configure -platform linux-g++ --enable-shared --enable-static -opengl es2 -device linux-beagleboard-g++ -device-option CROSS_COMPILE=$BBB_TC -sysroot $ROOT_FS -opensource -confirm-license -make libs -prefix $ROOT_FS -extprefix $ROOT_FS -hostprefix $ROOT_FS -v -no-gbm -skip qtserialbus -skip qtscxml -skip qtscript -skip qtcharts -skip qt3d -skip qtdatavis3d -skip qtcanvas3d -skip qtgamepad -skip qtvirtualkeyboard -skip qtwayland -skip qtwebengine -skip qtwebchannel -skip qtwebglplugin -recheck-all -no-qml-debug -nomake examples -nomake tests -no-pulseaudio -no-alsa


popd




Complile Step 1

cd qt5

make


On my system I get these errors




../../include/QtCore/../../src/corelib/global/qglobal.h:121:49: error: static assertion failed: Required feature library for file ../../include/QtCore/../../src/corelib/plugin/qlibrary.h not available.
# define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
^
../../include/QtCore/../../src/corelib/global/qglobal.h:87:36: note: in expansion of macro ‘Q_STATIC_ASSERT_X’
#define QT_REQUIRE_CONFIG(feature) Q_STATIC_ASSERT_X(QT_FEATURE_##feature == 1, "Required feature " #feature " for file " __FILE__ " not available.")
^~~~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/plugin/qlibrary.h:45:1: note: in expansion of macro ‘QT_REQUIRE_CONFIG’
QT_REQUIRE_CONFIG(library);
^~~~~~~~~~~~~~~~~
Makefile:28529: recipe for target '.obj/qsslsocket_openssl11.o' failed
make[3]: *** [.obj/qsslsocket_openssl11.o] Error 1
make[3]: Leaving directory '/BOARDS/QTFTF/qt5/qtbase/src/network'
Makefile:276: recipe for target 'sub-network-make_first' failed
make[2]: *** [sub-network-make_first] Error 2
make[2]: Leaving directory '/BOARDS/QTFTF/qt5/qtbase/src'
Makefile:50: recipe for target 'sub-src-make_first' failed
make[1]: *** [sub-src-make_first] Error 2
make[1]: Leaving directory '/BOARDS/QTFTF/qt5/qtbase'
Makefile:73: recipe for target 'module-qtbase-make_first' failed
make: *** [module-qtbase-make_first] Error 2



Shitty Fix #1

In ./qtbase/src/corelib/global/qglobal.h: I have changed this section as


/*
Avoid "unused parameter" warnings
*/
#define Q_UNUSED(x) (void)x;

#if defined(__cplusplus) && defined(Q_COMPILER_STATIC_ASSERT)
# define Q_STATIC_ASSERT(Condition) static_assert(bool(Condition), #Condition)
# define Q_STATIC_ASSERT_X(Condition, Message)// mco-mco static_assert(bool(Condition), Message)
#elif defined(Q_COMPILER_STATIC_ASSERT)
// C11 mode - using the _S version in case <assert.h> doesn't do the right thing
# define Q_STATIC_ASSERT(Condition) _Static_assert(!!(Condition), #Condition)
# define Q_STATIC_ASSERT_X(Condition, Message) _Static_assert(!!(Condition), Message)
#else
// C89 & C99 version
# define Q_STATIC_ASSERT_PRIVATE_JOIN(A, B) Q_STATIC_ASSERT_PRIVATE_JOIN_IMPL(A, B)
# define Q_STATIC_ASSERT_PRIVATE_JOIN_IMPL(A, B) A ## B
# ifdef __COUNTER__
# define Q_STATIC_ASSERT(Condition) \
typedef char Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __COUNTER__) [(Condition) ? 1 : -1];
# else
# define Q_STATIC_ASSERT(Condition) \
typedef char Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __LINE__) [(Condition) ? 1 : -1];
# endif /* __COUNTER__ */
//# define Q_STATIC_ASSERT_X(Condition, Message) Q_STATIC_ASSERT(Condition) mco-out mco-mco
# define Q_STATIC_ASSERT_X(Condition, Message)
#endif

#ifdef __cplusplus



make # #2
will lead unfirtunatelly in these errors make[5]: Leaving directory '/BOARDS/QTFTF/qt5/qtsvg/src/plugins/iconengines/svgiconengine' make[4]: Leaving directory '/BOARDS/QTFTF/qt5/qtsvg/src/plugins/iconengines' make[3]: Leaving directory '/BOARDS/QTFTF/qt5/qtsvg/src/plugins' make[2]: Leaving directory '/BOARDS/QTFTF/qt5/qtsvg/src' make[1]: Leaving directory '/BOARDS/QTFTF/qt5/qtsvg' cd qtdeclarative/ && ( test -e Makefile || /BOARDS/QTFTF/qt5/qtbase/bin/qmake -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/qtdeclarative.pro ) && make -f Makefile make[1]: Entering directory '/BOARDS/QTFTF/qt5/qtdeclarative' cd src/ && ( test -e Makefile || /BOARDS/QTFTF/qt5/qtbase/bin/qmake -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/src/src.pro ) && make -f Makefile make[2]: Entering directory '/BOARDS/QTFTF/qt5/qtdeclarative/src' cd qml/ && ( test -e Makefile || /BOARDS/QTFTF/qt5/qtbase/bin/qmake -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/src/qml/qml.pro ) && make -f Makefile Project MESSAGE: LIBRARY:[/BOARDS/QTFTF/ROOTFS/usr/lib /BOARDS/QTFTF/ROOTFS/usr/lib/arm-linux-gnueabihf] Project MESSAGE: perl -w /BOARDS/QTFTF/qt5/qtbase/bin/syncqt.pl -module QtQml -version 5.12.5 -outdir /BOARDS/QTFTF/qt5/qtdeclarative -builddir /BOARDS/QTFTF/qt5/qtdeclarative /BOARDS/QTFTF/qt5/qtdeclarative <srcbase> = /BOARDS/QTFTF/qt5/qtdeclarative <bldbase> = /BOARDS/QTFTF/qt5/qtdeclarative <outbase> = /BOARDS/QTFTF/qt5/qtdeclarative Project ERROR: Library 'libdl' is not defined. Makefile:54: recipe for target 'sub-qml-make_first-ordered' failed make[2]: *** [sub-qml-make_first-ordered] Error 3 make[2]: Leaving directory '/BOARDS/QTFTF/qt5/qtdeclarative/src' Makefile:49: recipe for target 'sub-src-make_first' failed make[1]: *** [sub-src-make_first] Error 2 make[1]: Leaving directory '/BOARDS/QTFTF/qt5/qtdeclarative' Makefile:299: recipe for target 'module-qtdeclarative-make_first' failed make: *** [module-qtdeclarative-make_first] Error 2



Check if the target FS links to libdl are as:



./ROOTFS/usr/lib/arm-linux-gnueabihf/libdl.so -> ../../../lib/arm-linux-gnueabihf/libdl-2.24.so
./ROOTFS/usr/lib/libdl.so -> ../../lib/arm-linux-gnueabihf/libdl-2.24.so
./TC741/arm-linux-gnueabihf/libc/usr/lib/libdl.so -> ../../lib/libdl.so.2
prompt$:/BOARDS/QTFTF$ ls -la ./TC741/arm-linux-gnueabihf/libc/usr/lib/libdl.so
./TC741/arm-linux-gnueabihf/libc/usr/lib/libdl.so -> ../../lib/libdl.so.2
prompt$:/BOARDS/QTFTF$ ls -la ./ROOTFS/usr/lib/libdl.so
./ROOTFS/usr/lib/libdl.so -> ../../lib/arm-linux-gnueabihf/libdl-2.24.so
prompt$:/BOARDS/QTFTF$ ls -la ./ROOTFS/usr/lib/arm-linux-gnueabihf/libdl.so
./ROOTFS/usr/lib/arm-linux-gnueabihf/libdl.so -> ../../../lib/arm-linux-gnueabihf/libdl-2.24.so




make # $3
If the error persists.
I did these changes
@./qtdeclarative/ gedit ./src/qml/qml.pro


TARGET = QtQml
QT = core-private

qtConfig(qml-network): \
QT += network

TRACEPOINT_PROVIDER = $$PWD/qtqml.tracepoints
CONFIG += qt_tracepoints

# mco-mco
LIBS += $$(ROOT_FS)/usr/lib
LIBS += $$(ROOT_FS)/usr/lib/arm-linux-gnueabihf

message("----------------------------------------------------")
message(" ROOTFS: [$$(ROOT_FS)]")
message(" LIBRARY: [$$LIBS]")


exists( $(ROOT_FS)/usr/lib/libdl.so ) {
message( "found libdl in $(ROOT_FS)/usr/lib/" )
}



make # $4
Errors libdl are still there,
Comment the damn checking out @
qtbase/mkspecs/features/qmake_use.prf as


suffix =
for(ever) {
CC_USES =
LD_USES =
for (use, QMAKE_USE$${suffix}) {
use = $$split(use, /)
name = $$take_first(use)
nu = $$upper($$replace(name, -, _))
!contains(use, linkonly): CC_USES += $$nu
!contains(use, nolink): LD_USES += $$nu
}

CC_USES = $$resolve_depends(CC_USES, QMAKE_DEPENDS_, _CC)
for (nu, CC_USES) {
# mco-mco !defined(QMAKE_LIBS_$$nu, var): \
# mco-mco error("Library '$$lower($$replace(nu, _, -))' is not defined.")

DEFINES += $$eval(QMAKE_DEFINES_$${nu})
INCLUDEPATH += $$eval(QMAKE_INCDIR_$${nu})
}
LD_USES = $$resolve_depends(LD_USES, QMAKE_DEPENDS_, _LD)
for (nu, LD_USES) {
# mco-mco !defined(QMAKE_LIBS_$$nu, var): \
# mco-mco error("Library '$$lower($$replace(nu, _, -))' is not defined.")

debug: \
LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_DEBUG) $$eval(QMAKE_LIBS_$$nu)
else: \
LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_RELEASE) $$eval(QMAKE_LIBS_$$nu)
}
!isEmpty(suffix): break()
suffix = "_PRIVATE"
}




make # #5
Errors I get:
arm-linux-gnueabi-g++ with a lot's of -fPIC's in the arguments.
Tryed to fix the pro.
Finally
I fix the Makefile.
Fix the Makefile in qtdeclarative/ folder. I took out all the tools shit.



sub-tests: sub-src \
# sub-tools FORCE
# @test -d tests/ || mkdir -p tests/
# cd tests/ && ( test -e Makefile || $(QMAKE) -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/tests/tests.pro ) && $(MAKE) -f Makefile
sub-tests-make_first: sub-src-make_first sub-tools-make_first FORCE
# @test -d tests/ || mkdir -p tests/
# cd tests/ && ( test -e Makefile || $(QMAKE) -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/tests/tests.pro ) && $(MAKE) -f Makefile
sub-tests-all: sub-src-all sub-tools-all FORCE
# @test -d tests/ || mkdir -p tests/
# cd tests/ && ( test -e Makefile || $(QMAKE) -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/tests/tests.pro ) && $(MAKE) -f Makefile all
sub-tests-clean: sub-src-clean sub-tools-clean FORCE
# @test -d tests/ || mkdir -p tests/
# cd tests/ && ( test -e Makefile || $(QMAKE) -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/tests/tests.pro ) && $(MAKE) -f Makefile clean
sub-tests-distclean: sub-src-distclean sub-tools-distclean FORCE
# @test -d tests/ || mkdir -p tests/
# cd tests/ && ( test -e Makefile || $(QMAKE) -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/tests/tests.pro ) && $(MAKE) -f Makefile distclean
sub-tests-install_subtargets: sub-src-install_subtargets sub-tools-install_subtargets FORCE
# @test -d tests/ || mkdir -p tests/
# cd tests/ && ( test -e Makefile || $(QMAKE) -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/tests/tests.pro ) && $(MAKE) -f Makefile install
sub-tests-uninstall_subtargets: sub-src-uninstall_subtargets sub-tools-uninstall_subtargets FORCE
# @test -d tests/ || mkdir -p tests/
# cd tests/ && ( test -e Makefile || $(QMAKE) -o Makefile /BOARDS/QTFTF/qt5/qtdeclarative/tests/tests.pro ) && $(MAKE) -f Makefile uninstall
# mco-mco




cd qt5/qtdeclarative
make
cd qt5


make # #6..

..... at the end after a gazilion minutes...


make[2]: Leaving directory '/BOARDS/QTFTF/qt5/qtdoc/doc'
make[1]: Leaving directory '/BOARDS/QTFTF/qt5/qtdoc'
cd qtqa/ && ( test -e Makefile || /BOARDS/QTFTF/qt5/qtbase/bin/qmake -o Makefile /BOARDS/QTFTF/qt5/qtqa/qtqa.pro ) && make -f Makefile
make[1]: Entering directory '/BOARDS/QTFTF/qt5/qtqa'
make[1]: Nothing to be done for 'first'.
make[1]: Leaving directory '/BOARDS/QTFTF/qt5/qtqa'
[1]+ Done gedit ./qt5/configure (wd: /BOARDS/QTFTF)
(wd now: /BOARDS/QTFTF/qt5)
marius@pegpc:/BOARDS/QTFTF/qt5$



make install (work in progress)
sync back ROOTFS to SDcard.
Reboot

Like any Y2K+6 Software Bloat,
A complettly uterly messs...

No comments:

Post a Comment