• Tero Rintaluoma's avatar
    Adds "armvX-none-rvct" targets · 11a222f5
    Tero Rintaluoma authored
    Adds following targets to configure script to support RVCT compilation
    without operating system support (for Profiler or bare metal images).
     - armv5te-none-rvct
     - armv6-none-rvct
     - armv7-none-rvct
    
    To strip OS specific parts from the code "os_support"-config was added
    to script and CONFIG_OS_SUPPORT flag is used in the code to exclude OS
    specific parts such as OS specific includes and function calls for
    timers and threads etc. This was done to enable RVCT compilation for
    profiling purposes or running the image on bare metal target with
    Lauterbach.
    
    Removed separate AREA directives for READONLY data in armv6 and neon
    assembly files to fix the RVCT compilation. Otherwise
    "ldr <reg>, =label" syntax would have been needed to prevent linker
    errors. This syntax is not supported by older gnu assemblers.
    
    Change-Id: I14f4c68529e8c27397502fbc3010a54e505ddb43
    11a222f5
portingqmlapp.qdoc 4.03 KiB
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.  For licensing terms and
** conditions see http://qt.digia.com/licensing.  For further information
** use the contact form at http://qt.digia.com/contact-us.
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file.  Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: http://www.gnu.org/copyleft/fdl.html.
** $QT_END_LICENSE$
****************************************************************************/
/*!
\page portingqmlapp.html
\title Porting QML Applications to Qt 5 Example
\brief Provides step-by-step instructions to port a QML application to Qt 5.
The new version of Qt Quick in Qt 5 brings in some changes to the way QML
applications are developed. For the complete list of changes that affect
existing QML applications, refer to \l{Porting QML Applications to Qt 5}.
This topic will walk through the porting process to make the \c{flickr} Qt 4
QML demo work on Qt 5. If you have the SDK based on Qt 4.8 installed, you can
find this demo application under
\c{<install_dir_root>/Examples/4.x/declarative/demos/}.
The \c{flickr} application is a complete application that comes with a launcher.
Follow these step-by-step instructions to make the \e{flickr} Qt 4 QML
application work on Qt 5:
\list 1
 \li Edit all the \c{.qml} files and replace \c{import QtQuick 1.0} statements
     with \c{import QtQuick 2.0}.
 \li Add the additional \c{import QtQuick.XmlListModel 2.0} statement to
     \c{qml/common/RssModel.qml}.
     \note XmlListModel is part of a submodule under QtQuick and it must be
           imported explicitly to use it.
 \li Make the following changes to
     \c{qmlapplicationviewer/qmlapplicationviewer.h}:
  \list
   \li Replace the \c{#include <QtDeclarative/QDeclarativeView>} with
       \c{#include <QQuickView>}.
   \li Replace \c{QDeclarativeView} with \c{QQuickView} in the class
       declaration for \c{QmlApplicationViewer}.
   \li Replace the parameter for \c{QmlApplicationViewer} constructor from
       \c{QWidget} to \c{QWindow}.
  \endlist
 \li Make the following changes to
     \c{qmlapplicationviewer/qmlapplicationviewer.cpp}:
  \list
   \li Replace all the \c{QtCore} and \c{QtDeclarative} include statements with
       these:
    \code
      #include <QCoreApplication>
      #include <QDir>
      #include <QFileInfo>
71727374757677787980818283848586878889909192939495
#include <QQmlComponent> #include <QQmlEngine> #include <QQmlContext> #include <QDebug> \endcode \li Replace all instances of \c{QWidget} with \c{QWindow}, and \c{QDeclarativeView} with \c{QQuickView}. \li Remove the code between \c{#if defined(Q_OS_SYMBIAN)} and \c{#endif} macros as Symbian platform is not supported in Qt 5. \li Remove the code between \c{#if QT_VERSION < 0x040702} and \c{#else}, and \c{#endif // QT_VERSION < 0x040702} macros towards the end. \endlist \li Run the \c{qmake} and \c{make} utilities to build the application. \note Ensure that the \c{PATH} environment variable is pointing to the Qt 5 binaries and libraries directories, before running \c{qmake}. \endlist Run the \c{flickr} application to see whether it behaves as expected. Here is a snapshot of the application running on Ubuntu v12.04: \image flickr_application.png \section1 Related Topics \l{Porting QML Applications to Qt 5} */