From fd6380f93524661b9d5b28f7834bb048ce2f183d Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Fri, 3 Dec 2021 18:29:53 +0100 Subject: [PATCH] Doc: Describe deploying apps to embedded Linux devices - Describe deployment process in the instructions for generic remote Linux devices and link to there from the instructions for specific devices. - Update instructions for adding files when using CMake and remove the include file. - Add an example of adding files to deploy when using qmake. Fixes: QTCREATORBUG-26616 Change-Id: I07cf9169da384dd65adc6935110e4dcbeb3e308b Reviewed-by: Samuli Piippo --- ...tor-embedded-linux-deployment-overview.png | Bin 15194 -> 0 bytes .../creator-projects-cmake-deploying.qdocinc | 106 ------------------ .../src/cmake/creator-projects-cmake.qdoc | 9 +- .../linux-mobile/creator-deployment-b2qt.qdoc | 15 ++- .../creator-deployment-embedded-linux.qdoc | 104 +++++++++++------ .../creator-projects-generic.qdoc | 6 +- .../src/qnx/creator-deployment-qnx.qdoc | 25 ++--- 7 files changed, 95 insertions(+), 170 deletions(-) delete mode 100644 doc/qtcreator/images/qtcreator-embedded-linux-deployment-overview.png delete mode 100644 doc/qtcreator/src/cmake/creator-projects-cmake-deploying.qdocinc diff --git a/doc/qtcreator/images/qtcreator-embedded-linux-deployment-overview.png b/doc/qtcreator/images/qtcreator-embedded-linux-deployment-overview.png deleted file mode 100644 index 25cdf5c7bf5234e7ac31a0a53f60b8c01eed703d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15194 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 - : - ... - : - \endcode - - Where: - - \list - - \li \c {} is the (absolute) path prefix to where - files are copied on the remote machine. - - \li \c {} is the file path relative to the CMake - project root. No directories or wildcards are allowed in this - value. - - \li \c {} is the destination directory path - relative to \c {deployment/prefix}. - - \endlist - - To automate the creation of \c {QtCreatorDeployment.txt} file: - - \list 1 - - \li Define the following macros in the top level \c {CMakeLists.txt} - file: - - \code - file(WRITE "${CMAKE_SOURCE_DIR}/QtCreatorDeployment.txt" "\n") - - macro(add_deployment_file SRC DEST) - file(RELATIVE_PATH path ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}) - file(APPEND "${CMAKE_SOURCE_DIR}/QtCreatorDeployment.txt" "${path}/${SRC}:${DEST}\n") - endmacro() - - macro(add_deployment_directory SRC DEST) - file(GLOB_RECURSE files RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${SRC}/*") - foreach(filename ${files}) - get_filename_component(path ${filename} PATH) - add_deployment_file("${filename}" "${DEST}/${path}") - endforeach(filename) - endmacro() - \endcode - - \li Use \c {add_deployment_file()} to add files and - \c {add_deployment_directory()} to add directories - (including subdirectories) to the \c QtCreatorDeployment.txt file. - - \li Re-run \c cmake after you add or remove files using the macros. - - \endlist - -//! [cmake deploying embedded] -*/ diff --git a/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc b/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc index 80f0e326ea8..0258564a0b0 100644 --- a/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc +++ b/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2021 The Qt Company Ltd. +** Copyright (C) 2022 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Creator documentation. @@ -42,8 +42,9 @@ native build configurations and workspaces that you can use in the compiler environment of your choice. - You can use CMake from \QC to build applications for the desktop and - Android devices. You can also build single files to test your changes. + You can use CMake from \QC to build applications for the desktop, as well + as mobile and embedded devices. You can also build single files to test + your changes. \QC automatically detects the CMake executable specified in the \c PATH. You can add paths to other CMake executables and use them in different @@ -168,6 +169,6 @@ \li \l {Opening Projects} \li \l {CMake Build Configuration} \li \l {Specifying Run Settings} - \li \l {Deploying CMake Projects to Generic Remote Linux Devices} + \li \l {Deploying Applications to Generic Remote Linux Devices} \endlist */ diff --git a/doc/qtcreator/src/linux-mobile/creator-deployment-b2qt.qdoc b/doc/qtcreator/src/linux-mobile/creator-deployment-b2qt.qdoc index 40af933a85a..b2b9b128059 100644 --- a/doc/qtcreator/src/linux-mobile/creator-deployment-b2qt.qdoc +++ b/doc/qtcreator/src/linux-mobile/creator-deployment-b2qt.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2021 The Qt Company Ltd. +** Copyright (C) 2022 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Creator documentation. @@ -30,13 +30,18 @@ \title Deploying Applications to Boot2Qt Devices - You can specify the generic deployment steps for remote Linux devices also - for \l{Boot2Qt} devices. + You can specify settings for deploying applications to \l{Boot2Qt} devices + in the project configuration file and in \uicontrol Projects > + \uicontrol {Run Settings} > \uicontrol Deployment. \image qtcreator-boot2qt-deployment-steps.png "Boot2Qt deployment steps" - For more information, see \l{Generic Deployment Steps}. + The deployment process is described in more detail in + \l{Deploying Applications to Generic Remote Linux Devices}. + + \section1 Launching Applications on Boot In addition, to have your application launch on boot, select - \uicontrol {Add Deploy Step} > \uicontrol {Change Default Application}. + \uicontrol {Add Deploy Step} > \uicontrol {Change default application} + > \uicontrol {Set this application to start by default}. */ diff --git a/doc/qtcreator/src/linux-mobile/creator-deployment-embedded-linux.qdoc b/doc/qtcreator/src/linux-mobile/creator-deployment-embedded-linux.qdoc index 11d7ac33518..f149f741db5 100644 --- a/doc/qtcreator/src/linux-mobile/creator-deployment-embedded-linux.qdoc +++ b/doc/qtcreator/src/linux-mobile/creator-deployment-embedded-linux.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2020 The Qt Company Ltd. +** Copyright (C) 2022 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Creator documentation. @@ -41,58 +41,70 @@ \title Deploying Applications to Generic Remote Linux Devices You can specify settings for deploying applications to generic remote - Linux devices in the project .pro file. You can view the settings in - the \uicontrol Projects mode, in \uicontrol {Run Settings}. + Linux devices in the project configuration file and in the + \uicontrol Projects mode, in \uicontrol {Run Settings}. - \image qtcreator-embedded-linux-deployment-overview.png "Deploy to device" + \image qtcreator-embedded-linux-deployment-details.png "Deploy to embedded Linux" The files to be installed are listed in the \uicontrol {Deployment} step, the \uicontrol {Files to deploy} field. The \uicontrol {Local File Path} field displays the location of the file on the development PC. The - \uicontrol {Remote Directory} field displays the folder where the file is + \uicontrol {Remote Directory} field displays the directory where the file is installed on the device. Text in red color indicates that the information is - missing. Edit the qmake \l{Variables#installs} {INSTALLS variable} in the - project \c .pro file to add the missing files. + missing. + + \section1 Adding Missing Files + + The process to add files to deploy depends on the build system you use. + + \section2 CMake + + When using CMake as the build system, use the \l{CMake: install command} + {install} command in the CMakeLists.txt file to add the missing files. + + For example, add the following lines to the CMakeLists.txt file to install + the binary of your project to the \c /opt directory on the remote device: + + \badcode + set(INSTALL_DESTDIR "/opt") + + install(TARGETS + RUNTIME DESTINATION "${INSTALL_DESTDIR}" + BUNDLE DESTINATION "${INSTALL_DESTDIR}" + LIBRARY DESTINATION "${INSTALL_DESTDIR}" + ) + \endcode + + \section2 qmake + + When using qmake, edit the \l{Variables#installs}{INSTALLS variable} in + the project \c .pro file. When you run the application, \QC copies the necessary files to the device and starts the application on it. - For example, adding + For example, add the following lines to the \c .pro file to copy the binary + of your project to the \c /opt directory on the remote device: \code - target.path = /root + target.path = /opt INSTALLS += target \endcode - to the project .pro file will copy the binary of your project to \c /root - on the remote device. Additional files can be deployed by adding them to - further targets and adding those to \c INSTALLS as well. + To deploy additional files, add them to further targets that you also add + to \c INSTALLS. - \section1 Generic Deployment Steps + \section1 Deploy Steps - \image qtcreator-embedded-linux-deployment-details.png "Deploy to embedded Linux" + When you run the application on the device, \QC first uploads the + necessary files to it, as specified by the deploy steps. - When you run the application on the device, \QC - deploys the application as specified by the deploy steps. By default, \QC - copies the application files to the device by using the SSH file transfer - protocol (SFTP), as specified by the \uicontrol {Upload files via SFTP} - step. + \section2 Finding Configured Devices - If you have a lot of data to copy, select \uicontrol Details in the - \uicontrol {Upload Files via SFTP} step, and then select the - \uicontrol {Incremental deployment} check box. \QC takes note of the - deployment time and only copies files that have changed since the last - deployment. However, when you make major changes on the device, such as - removing files from the device manually or flashing a new disk image, or - when you use another device with the same IP address, deselect the check box - once, to have \QC deploy all files again. + The \uicontrol {Check for a configured device} step looks for a device that + is ready for deployment. - To only create a tarball and not copy the files to the device, select - \uicontrol {Add Deploy Step} > \uicontrol {Create tarball}. Then remove all - other deploy steps. - - The \uicontrol {Deploy tarball via SFTP upload} step specifies that \QC - uploads the tarball to the device and extracts it. + \section2 Checking for Free Disk Space The \uicontrol {Check for free disk space} step is by default the first deploy step. Use it to find out whether the remote file system has enough @@ -104,7 +116,27 @@ support will crash when an SFTP upload is being attempted. This is not a bug in \QC. - \if defined(qtcreator) - \include creator-projects-cmake-deploying.qdocinc cmake deploying embedded - \endif + \section2 Uploading Files + + By default, \QC copies the application files to the device by + using the SSH file transfer protocol (SFTP), as specified by + the \uicontrol {Upload files via SFTP} step. + + If you have a lot of data to copy, select \uicontrol Details in the + \uicontrol {Upload Files via SFTP} step, and then select the + \uicontrol {Incremental deployment} check box. \QC takes note of the + deployment time and only copies files that have changed since the last + deployment. However, when you make major changes on the device, such as + removing files from the device manually or flashing a new disk image, or + when you use another device with the same IP address, deselect the check box + once, to have \QC deploy all files again. + + \section2 Creating a Tarball + + To only create a tarball and not copy the files to the device, select + \uicontrol {Add Deploy Step} > \uicontrol {Create tarball}. Then remove all + other deploy steps. + + The \uicontrol {Deploy tarball via SFTP upload} step specifies that \QC + uploads the tarball to the device and extracts it. */ diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-generic.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-generic.qdoc index df454aaa6d1..ce96890fac6 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-generic.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-generic.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2019 The Qt Company Ltd. +** Copyright (C) 2022 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Creator documentation. @@ -144,8 +144,8 @@ If you want to run your application on a generic remote Linux device, you first need to deploy your executable and possibly other files. \QC does that for you automatically if you provide the necessary - information. This works the same way as explained for CMake - \l {Deploying CMake Projects to Generic Remote Linux Devices}{here}, + information. This works the same way as explained for CMake in + \l {Deploying Applications to Generic Remote Linux Devices}, except that you also need to include your application binary in the list. \section1 Creating a Run Configuration diff --git a/doc/qtcreator/src/qnx/creator-deployment-qnx.qdoc b/doc/qtcreator/src/qnx/creator-deployment-qnx.qdoc index 232a371e26c..5ec84643126 100644 --- a/doc/qtcreator/src/qnx/creator-deployment-qnx.qdoc +++ b/doc/qtcreator/src/qnx/creator-deployment-qnx.qdoc @@ -1,13 +1,13 @@ /**************************************************************************** ** -** This file is part of Qt Creator -** ** Copyright (C) 2018 Blackberry -** ** Contact: Blackberry (qt@blackberry.com) ** Contact: KDAB (info@kdab.com) ** -** This file is part of the documentation of the Qt Toolkit. +** Copyright (C) 2022 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Creator documentation. ** ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in @@ -40,19 +40,12 @@ \title Deploying Applications to QNX Neutrino Devices - You can deploy applications to QNX Neutrino devices in the way that is - described in \l{Deploying Applications to Generic Remote Linux Devices}. + You can specify settings for deploying applications to QNX Neutrino + devices in the project configuration file and in \uicontrol Projects + > \uicontrol {Run Settings} > \uicontrol Deployment. \image qtcreator-qnx-deployment.png "Deploy to device" - The files to be installed are listed in the \uicontrol {Deployment} step, - the \uicontrol {Files to deploy} field. The - \uicontrol {Local File Path} field displays the location of the file on the - development PC. The \uicontrol {Remote Directory} field displays the folder - where the file is installed on the device. Text in red color indicates that - the information is missing. Edit the qmake \l{Variables#installs} - {INSTALLS variable} in the project \c .pro file to add the missing files. - - When you run the application, \QC copies the necessary files to the device - and starts the application on it. + The deployment process is described in more detail in + \l{Deploying Applications to Generic Remote Linux Devices}. */