Changes between Version 2 and Version 3 of Docs/825gen2/Dev/GettingStarted


Ignore:
Timestamp:
11/09/23 10:39:06 (12 months ago)
Author:
Don Wilson
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Docs/825gen2/Dev/GettingStarted

    v2 v3  
    1111
    1212Open the virtual machine using VMWare Workstation or VMWare Player.
     13
     14
     15
     16Login with user password: new825
     17
     18Toolbar at the bottom of the screen is configured with icons to open helpful programs for 825 development.
     19
     20
     21
     22The Eclipse IDE is used for developing 825 apps.
     23
     24
     25
     26The "Project Explorer" shows existing projects in the current workspace.
     27
     28For more information about the project refer to the page: App Source Code Repositories
     29
     30These existing projects in the VM may be out of date. To update them make sure the VM is properly configured to have internet access.
     31
     32Right-click on each project name, select "Team", and then "Update to HEAD". You may be prompted for login
     33
     34
     35
     36Contact Cardinal for login to the server.
     37
     38The projects with names starting "lib" are libraries that are used by apps. The most common library that is used for an 825 app is lib825ev.
     39
     40
     41
     42A good way to learn is to view code, build and modify existing projects.
     43
     44Build configurations
     45
     46Right-click on a project and select "Build Configurations", "Set Active" to see possible build configurations.
     47
     48
     49
     50
     51For developing for new 825 use "Debug-ARM825".  Debug builds often have additional diagnostic messages that are output to the terminal.
     52
     53Right-click and select "Clean Project" to remove intermediate files and the executable for the selected project.
     54
     55
     56
     57Right-click and select "Build Project" to compile and link all modules to create the executable for the selected project.
     58
     59
     60The GCC ARM 64-bit compiler compiles each source file and then the linker links the objects to create the executable file. In the above example the executable file is /srv/nfs/arm825_nand/apps/ids_dbg
     61
     62The "File Manager" may be used to view this.
     63
     64
     65
     66
     67
     68In this case use the change directory "cd" command to select the output directory. The "file" command  can be used to provide information about an executable file.
     69
     70ids_dbg: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, with debug_info, not stripped
     71
     72Note the ARM aarch64 indicates the file is for 64-bit ARM architecture.
     73
     74The file may be copied to the 825 using the scp command such as:
     75
     76scp /srv/nfs/arm825_nand/apps/ids_dbg root@10.1.0.176:/mnt/nand/apps
     77
     78However, it is often useful to not copy the file to the 825 every time.  Instead the 825 can mount the VM drive with NFS so that the file can be run while still in the VM.
     79
     80Connect to the 825 with ssh
     81
     82ssh can be used from the terminal in the VM or if you have multiple monitors it can be convenient to use ssh from Windows powershell in another monitor.
     83
     84First time for each session:
     85source test825 <ip address of VM>
     86
     87Period is a shortcut for source command.
     88
     89For example:
     90
     91. test825 10.1.5.157
     92
     93(a space is necessary after the period)
     94
     95Then from ssh into the 825 make sure appropriate directory is selected such as:
     96
     97cd /mnt/nfs/arm825_nand/apps
     98
     99Run the app
     100./ids_dbg
     101
     102It is best to exit the app when done instead of Ctrl-C. If the app is terminated with Ctrl-C it may not cleanup and leave mainboard communications in an undesirable state.
     103
     104
     105