From eefc3ab6cbb8a5901632f46d99e13c8d90b2415d Mon Sep 17 00:00:00 2001 From: growupboron Date: Fri, 9 Oct 2020 00:19:18 +0530 Subject: rewrote quickstart, build-process Revamped and updated documentation to install and build AGL images. (removed whitespaces, added contribution guide, corrected rcar-gen3 section 7, added aglsetup.h flags to hardware support, some minor changes) Bug-AGL: [SPEC-3633] Signed-off-by: Shankho Boron Ghosh Change-Id: Iedb6c7dc1661f4bc58b5f25ea5d188778c7ff908 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/documentation/+/25407 Reviewed-by: Jan-Simon Moeller Tested-by: Jan-Simon Moeller --- .../3.4.3.1_Overview.md | 45 ------- .../3.4.3.2_Configuration.md | 129 --------------------- .../3.4.3.3_Using_the_Command_Line.md | 123 -------------------- .../3.4.3.4_Using_an_IDE.md | 94 --------------- .../pictures/nb_newtool.png | Bin 49093 -> 0 bytes .../pictures/nb_project_debug-1.png | Bin 59680 -> 0 bytes .../pictures/nb_xds_options.png | Bin 50729 -> 0 bytes 7 files changed, 391 deletions(-) delete mode 100644 docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.1_Overview.md delete mode 100644 docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.2_Configuration.md delete mode 100644 docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.3_Using_the_Command_Line.md delete mode 100644 docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.4_Using_an_IDE.md delete mode 100644 docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_newtool.png delete mode 100644 docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_project_debug-1.png delete mode 100644 docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_xds_options.png (limited to 'docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application') diff --git a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.1_Overview.md b/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.1_Overview.md deleted file mode 100644 index 83e425f..0000000 --- a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.1_Overview.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -edit_link: '' -title: Overview -origin_url: >- - https://git.automotivelinux.org/src/xds/xds-docs/plain/docs/part-1/debug-overview.md?h=master ---- - - - -# Overview - -Debugging your AGL application is based on the GNU Project Debugger -([GDB](https://www.gnu.org/software/gdb/)). -In order to use GDB, you must use `xds-gdb` as a wrapper on GDB to -cross-debug your application. -For information on `xds-gdb`, see the -"[Client Part](./client-part.html)" topic. - -Using `xds-gdb` allows you to debug an application built with -XDS without the need to install GDB or any cross-tools. - -XDS supports two debugging models: - -* Native debugging - -* XDS remote debugging - -The default debugging model is XDS remote. -To use this model, you must have previously set up the XDS -agent and server so that you can cross-debug your application. -See the -"[Server Part](./server-part.html)" and -"[Client Part](./client-part.html)" topics for more -information on getting set up. - -If you want to use the native debugging model, you must define the -`XDS_NATIVE_GDB` environment variable. -See the -"[Configuration](./debug-configuration.html)" topic for information -on XDS configuration variables. - -The remainder of this topic describes -[configurations](./debug-configuration.html), using the XDS -[command line](./debug-cmd-line.html) to debug, and using an -[IDE](./debug-ide.html) to debug. diff --git a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.2_Configuration.md b/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.2_Configuration.md deleted file mode 100644 index 2bc28f3..0000000 --- a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.2_Configuration.md +++ /dev/null @@ -1,129 +0,0 @@ ---- -edit_link: '' -title: Configuration -origin_url: >- - https://git.automotivelinux.org/src/xds/xds-docs/plain/docs/part-1/debug-configuration.md?h=master ---- - - - -# Configuration - -Debug configuration (i.e. `xds-gdb`) is defined by variables. -You can see the variables used further down in this section. - -You can set these variables using a number of methods: - -- Environment variables that are inherited. - -- Configuration file pointed to by the `XDS_CONFIG` environment variable - (e.g. `XDS_CONFIG=/tmp/my_xds_gdb_config.env xds-gdb`). - -- A GDB "init" command file. - -- A "user" configuration file located in one of the following - areas, which are order-dependent: - - 1. `$(CURRENT_DIRECTORY)/.xds-gdb.env` - - 1. `$(CURRENT_DIRECTORY)/../xds-gdb.env` - - 1. `$(CURRENT_DIRECTORY)/target/xds-gdb.env` - - 1. `$(HOME)/.config/xds/xds-gdb.env` - -## Configuration Variables - -This section describes the `XDS_*` configuration variables. -As previously mentioned, you can define these variables as -described in the previous section. - -- `XDS_LOGLEVEL` - - Sets the logging level. - Levels include "panic", "fatal", "error", "warn", "info", and "debug". - -- `XDS_LOGFILE` - - Sets the logging file. - The default is `/tmp/xds-gdb.log`. - -- `XDS_NATIVE_GDB` - - Specifies to use native GDB mode rather than remote XDS mode. - -- `XDS_PROJECT_ID` *(mandatory in XDS mode)* - - The project ID you want to build. - -- `XDS_RPATH` - - The relative path to the project. - -- `XDS_SDK_ID` *(mandatory in XDS mode)* - - Cross SDK ID to use to build project - -- `XDS_AGENT_URL` - - The local XDS agent URL. - The default is `http://localhost:8800`. - -## Configuration Using `XDS_CONFIG` - -As mentioned, you can define configuration variables in -a file you point to with the `XDS_CONFIG` variable. -Here is an example: - -```bash -XDS_CONFIG=/tmp/my_xds_gdb_config.env xds-gdb -``` - -Variables defined in this file overwrite any inherited -environment variables. -When you define a variable in the file, you can prefix the -assignment with the "export" string. -Doing so causes the variable to be exported to the environment. - -Following is an example of a configuration file pointed -to by the `XDS_CONFIG` variable. -These commands create the `xds-gen3.conf` configuration file -in the `$MY_PROJECT_DIR` directory: - -```bash -# MY_PROJECT_DIR=/home/seb/xds-workspace/helloworld-native-application -cat > $MY_PROJECT_DIR/xds-gen3.conf << EOF -export XDS_AGENT_URL=localhost:8800 -export XDS_PROJECT_ID=4021617e-ced0-11e7-acd2-3c970e49ad9b -export XDS_SDK_ID=c226821b-b5c0-386d-94fe-19f807946d03 -EOF -``` - -## Configuration Using GDB Init - -GDB is a versatile debugger and can be run with many options. -One such option is to execute a GDB "init" file upon startup. -You do this by using the "--command" or "-x" command-line options -and providing the name of the init file. - - -**NOTES:** - -- For information on debugging with GDB, see - "[Debugging with GDB](https://www.sourceware.org/gdb/onlinedocs/gdb.html)". - -- For information on GDB init files, see - "[Command files](https://ftp.gnu.org/old-gnu/Manuals/gdb-5.1.1/html_node/gdb_190.html)". - - -When you create an init file, it must conform to the following -syntax (i.e. inclusion of what are normally commenting characters -as well as use of the `:XDS-ENV:` tag). - -Following is an example init file that defines the `XDS_PROJECT_ID` -and `XDS_SDK_ID` variables: - -```bash - # :XDS-ENV: XDS_PROJECT_ID=4021617e-ced0-11e7-acd2-3c970e49ad9b - # :XDS-ENV: XDS_SDK_ID=c226821b-b5c0-386d-94fe-19f807946d03 -``` diff --git a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.3_Using_the_Command_Line.md b/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.3_Using_the_Command_Line.md deleted file mode 100644 index 4dd7431..0000000 --- a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.3_Using_the_Command_Line.md +++ /dev/null @@ -1,123 +0,0 @@ ---- -edit_link: '' -title: Using the Command Line -origin_url: >- - https://git.automotivelinux.org/src/xds/xds-docs/plain/docs/part-1/debug-cmd-line.md?h=master ---- - - - -# Using the XDS Command Line - -You can debug your AGL application using the XDS command line -in XDS remote mode or in native mode. - -## XDS Remote Mode - -XDS remote debugging is the default mode for using XDS to debug your -application. - - -Follow this procedure to use XDS remotely to debug your application: - -1. Declare the project you want to debug to the `xds-server`. - The project can also have been built using XDS. - See the "[Create your first AGL application](../../../#create-your-first-agl-application)" - topic for more details. - -2. Be sure you have the XDS agent and XDS server chain in place. - You can find more information on this chain in the - "[Installing XDS](../../../#installing-xds)" topic. - -3. Determine the unique project and SDK ID values. - Two methods exist for you to locate these ID values: - - - Use the "Project" page of the XDS dashboard. - - - Use the `xds-gdb --list` command from the XDS command line. - This command returns the list of all existing project and SDK - IDs: - - ```bash - xds-gdb --list - ``` - -4. Define the `XDS_PROJECT_ID` and `XDS_SDK_ID` variables. - Defining these variables refers the project to the - `xds-server`. - Once you refer the project, you are ready to use `xds-gdb` - (e.g. cross debug your project). - -5. Build and debug the project. - -**Example** - -Following is an example that builds and debugs a project -based on a CMakefile and the -[cmake-apps-module](https://git.automotivelinux.org/src/cmake-apps-module/): - -```bash -# Go into your project directory (e.g. helloworld-native-application) -cd ~/xds-workspace -# Clone the project files into your local directory. -git clone https://github.com/iotbzh/helloworld-native-application.git -# Go to the local project's directory. -cd helloworld-service - -# Declare your project on xds-server -# For now, you can only do this step using the XDS Dashboard. -# See the "Build Using the XDS Dashboard" topic in the "Create Your -# First Application" topic. - -# Define XDS configuration variables by creating a "xds-config.env" file. -cat <./xds-config.env -#optional if not default value: XDS_AGENT_URL=http://localhost:8800 -XDS_PROJECT_ID=IW7B4EE-DBY4Z74_myProject -XDS_SDK_ID=poky-agl_aarch64_4.0.1 -EOF - -# Define the configuration file to use. -export XDS_CONFIG=../xds-gen3.conf - -# Create a new build directory. -mkdir build && cd build - -# Start remote cross-build -xds-cli exec -- cmake -DRSYNC_TARGET=root@myTarget .. -xds-cli exec -- make -xds-cli exec -- make remote-target-populate - -# Start debugging -xds-gdb -x target/gdb-on-root@myTarget.ini -``` - - -**NOTE:** - -The [helloworld-native-application](https://github.com/iotbzh/helloworld-native-application) -project is an AGL project based on the -[cmake-apps-module](https://git.automotivelinux.org/src/cmake-apps-module/). -For information on installing this module, see the -"[Installing the CMAKE Templates](../../cmakeafbtemplates/dev_guide/installing-cmake.html))" -topic. - -The CMake templates that are used to develop applications -with the AGL Application Framework, automatically generate -Makefile rules (e.g. `remote-target-populate`) or scripts -(e.g. `build/target/*`). - -For more info about the CMake templates, see the -"[Using the Cmake Applications Module](../../../#using-the-cmake-applications-module)" -topic. - - -## Native debugging - -Native debugging is best for applications or services that are also -built natively and you want to use any debugger (e.g. GDB) on an actual -piece of hardware. - -To enable native debugging mode, set the `XDS_NATIVE_GDB` variable. - -For information on debugging with GDB, see -"[Debugging with GDB](https://www.sourceware.org/gdb/onlinedocs/gdb.html)". diff --git a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.4_Using_an_IDE.md b/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.4_Using_an_IDE.md deleted file mode 100644 index c4b0341..0000000 --- a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/3.4.3.4_Using_an_IDE.md +++ /dev/null @@ -1,94 +0,0 @@ ---- -edit_link: '' -title: Using an IDE -origin_url: >- - https://git.automotivelinux.org/src/xds/xds-docs/plain/docs/part-1/debug-ide.md?h=master ---- - - - -# Using an IDE - -This topic describes how to use `xds-gdb` from within an Interactive -Development Environment (IDE) to debug your application. -The topic uses the -[NetBeans](https://netbeans.org/) IDE as an example. - -## Prerequisites - -Before using the IDE, you need to declare the project you want to debug -on the `xds-server`. - - -**NOTE:** - -The project you declare can also have been built using XDS. -For information on building the project using XDS, see the -"[Create your first AGL application](../../../#create-your-first-agl-application)" -section. - - -## NetBeans - -This section presents an example using NetBeans version 8.x: - -1. Select the **Options** item in the **Tools** menu. - -2. Open the **Build Tools** tab. - -3. Open the **C/C++** tab and click the **Add** button to reveal the "Add New - Tool Collection" dialog box: - - ![Add new tool panel](./pictures/nb_newtool.png){:: style="width:90%; max-width:700px; margin:auto; display:flex"} - -4. Fill in the **Make Command** and **Debugger Command** fields so that they point to the XDS tools. - Following is an example: - - ![Add new tool panel](./pictures/nb_xds_options.png){:: style="width:90%; max-width:700px; margin:auto; display:flex"} - -5. Click on **OK** button. - -6. Select the **Project Properties** item in the **File** menu to - update your debug settings. - -7. In the "Project Properties" dialog, be sure that the "Gen3 board" - appears in the "Configuration" field (i.e. active). - -8. In the "Categories" navigation pane, select **Run**. - -9. Set the following: - - - Run Command: `target/start-on-root@renesas-gen3.sh` - - **NOTE:** - - The script name could depend on the `RSYNC_TARGET` - variable you set in pre-build command. - - - - Run Directory: `build_gen3` - -10. In the "Categories" navigation pane, select **Debug**. - -11. Set the following: - - - Debug command: `/bin/true` - - - Working Directory: Leave this field blank - - - Gdb Init File: `target/gdb-on-root@renesas-gen3.ini` - - **NOTE:** - - The script name could depend on the `RSYNC_TARGET` - variable you set in pre-build command. - - - ![Select Model panel](./pictures/nb_project_debug-1.png){:: style="width:90%; max-width:700px; margin:auto; display:flex"} - -12. Click **Apply**. - -13. Click **OK** to save your settings. - -14. Start debugging your application by selecting the **Debug Project** item - in the **Debug** menu, or by entering the **CTRL+F5** shortcut. diff --git a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_newtool.png b/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_newtool.png deleted file mode 100644 index 7c4fa40..0000000 Binary files a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_newtool.png and /dev/null differ diff --git a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_project_debug-1.png b/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_project_debug-1.png deleted file mode 100644 index 7d89fc5..0000000 Binary files a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_project_debug-1.png and /dev/null differ diff --git a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_xds_options.png b/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_xds_options.png deleted file mode 100644 index fa82a94..0000000 Binary files a/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/3_Debugging_Your_First_AGL_Application/pictures/nb_xds_options.png and /dev/null differ -- cgit 1.2.3-korg