Difference between revisions of "Getting Started with EMAC Embedded Linux Development"
Kyoungmeyer (talk | contribs) (re-structure intro) |
|||
(23 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | {{todo| | + | {{todo|SEOKWREV ; Done for OE4, need Qt information for OE5 when available; (12.04.13-16:55->KY+)(12.17.13-13:40->MG+) (03.04.14-15:15->BS-) (03.07.14-12:30->BS+) |Klint Youngmeyer|project=oe 4,oe 5,ky,md,mg,bs,SEOKWREV}} |
− | |||
+ | {{#seo: | ||
+ | |title=Getting Started with EMAC Embedded Linux Development | ||
+ | |titlemode=append | ||
+ | |keywords=Embedded Linux Development,Linux Development Computer,Eclipse,Bootloaders,OS Images | ||
+ | |description=Getting started with EMAC Embedded Linux Development and getting familiar with the software. | ||
+ | }} | ||
== Getting Started == | == Getting Started == | ||
− | Following the list of articles presented here, in order, will provide | + | Following the list of articles presented here, in order, will provide a good foundation for building custom embedded applications. |
=== Background Information About EMAC Products === | === Background Information About EMAC Products === | ||
− | |||
* [[EMAC OpenEmbedded Fact Sheet]] | * [[EMAC OpenEmbedded Fact Sheet]] | ||
* [[Standard EMAC OE Build Features]] | * [[Standard EMAC OE Build Features]] | ||
− | * [[EMAC OE | + | * [[EMAC OE Add-on Packages]] |
+ | |||
===Getting To Know Linux=== | ===Getting To Know Linux=== | ||
− | |||
* [[Getting Started with Linux]] | * [[Getting Started with Linux]] | ||
− | |||
* [[Setting the System Time]] | * [[Setting the System Time]] | ||
− | |||
− | + | ==Getting A Linux Development System Up And Running== | |
+ | |||
=== The LDC - Linux Development Computer === | === The LDC - Linux Development Computer === | ||
− | A popular option | + | A popular option to getting started quickly is to use the EMAC Linux Development Computer (LDC). There are two variants on this option, as follows: |
# '''The Hardware LDC''': This is a desktop computer with EMAC's customized Linux distribution preinstalled with the full EMAC SDK installed and ready to run. This is the most painless method of getting started, especially for those new to Linux and/or developing software under Linux. This is the most preferable system to use for development. | # '''The Hardware LDC''': This is a desktop computer with EMAC's customized Linux distribution preinstalled with the full EMAC SDK installed and ready to run. This is the most painless method of getting started, especially for those new to Linux and/or developing software under Linux. This is the most preferable system to use for development. | ||
− | # '''The LDC Virtual Machine''': This is a virtual machine image which can be used in | + | # '''The LDC Virtual Machine''': This is a virtual machine image which can be used in a virtual machine manager, such as VMWare<ref name="Note 1">VMWare is a trademark of VMWare, incorporated</ref> and VirtualBox. This, like the Hardware LDC, has EMAC's customized Linux distribution preinstalled with the full EMAC SDK installed and ready to run. This option works well, but may require additional set up and configuration of the host operating system. |
− | If this is the method | + | If this is the method chosen, the system should be already configured for development. Skip to the [[#Getting_Familiar_with_Eclipse | Getting Familiar with Eclipse]] section.<!--please use the ''Getting To Know Your Linux Development Computer'' track below.--> |
===Customer Installed EMAC SDK Packages On Customer's Existing Linux Computer=== | ===Customer Installed EMAC SDK Packages On Customer's Existing Linux Computer=== | ||
Line 33: | Line 36: | ||
EMAC provides SDK packages which can be installed by customers on their own Linux machines. This is the most difficult method of getting started, but is often preferred by customers who are already highly skilled with Linux. | EMAC provides SDK packages which can be installed by customers on their own Linux machines. This is the most difficult method of getting started, but is often preferred by customers who are already highly skilled with Linux. | ||
− | Should this be | + | Should this method be chosen, start with the [[EMAC OE SDK Introduction]].. |
− | ==Getting To Know Your Development System== | + | <!--==Getting To Know Your Development System== |
=== Getting To Know Your Linux Development Computer === | === Getting To Know Your Linux Development Computer === | ||
Line 41: | Line 44: | ||
* [[Getting Started]] | * [[Getting Started]] | ||
* [[Installing Packages]] | * [[Installing Packages]] | ||
− | * [[ | + | * [[Eclipse IDE]] |
− | * [[Making Connections]] | + | * [[Making Connections]]--> |
− | |||
===Getting Started With Software Development For EMAC Machines=== | ===Getting Started With Software Development For EMAC Machines=== | ||
* [[EMAC_OE_SDK_Introduction| EMAC Software Development Kit]] | * [[EMAC_OE_SDK_Introduction| EMAC Software Development Kit]] | ||
− | * [[Installing_EMAC_OE_SDK| Install EMAC OE 5 SDK]] (Legacy: [[Installing_EMAC_OE_4.0_SDK|Installing EMAC OE 4.0 SDK]] | + | * <!--[[Installing_EMAC_OE_SDK| Install EMAC OE 5 SDK]] (Legacy: -->[[Installing_EMAC_OE_4.0_SDK|Installing EMAC OE 4.0 SDK]] |
− | * [[Configuring_EMAC_OE_SDK|Configuring EMAC OE 5 SDK]] (Legacy: [[Configuring_EMAC_OE_4.0_SDK|Configuring EMAC OE 4.0 SDK]] | + | * <!--[[Configuring_EMAC_OE_SDK|Configuring EMAC OE 5 SDK]] (Legacy: -->[[Configuring_EMAC_OE_4.0_SDK|Configuring EMAC OE 4.0 SDK]] |
==Getting Familiar with Eclipse== | ==Getting Familiar with Eclipse== | ||
− | These articles will | + | These articles will help in getting started with Eclipse. If some other editor or IDE is used for development work, this step may be skipped. Working with a different IDE is beyond the scope of the EMAC documentation and will be unsupported. Using the shell based build system will, however, still work as documented. |
− | * [[First Time Starting | + | * [[First Time Starting Eclipse]] |
* [[Using the Eclipse Terminal View]] | * [[Using the Eclipse Terminal View]] | ||
− | * [[ | + | * [[Eclipse_Remote_System_Explorer|Remote System Explorer]] |
− | ** [[ | + | ** [[Remote_System_Explorer_Setup_for_Eclipse|RSE Setup]] |
− | ** [[ | + | ** [[Remote_System_Explorer_SFTP_Setup_for_Eclipse|RSE SFTP Setup]] |
** [[Remote_System_Explorer_Shell_and_Terminal_Setup|Remote Shell and Terminal Setup]] | ** [[Remote_System_Explorer_Shell_and_Terminal_Setup|Remote Shell and Terminal Setup]] | ||
− | * [[ | + | * [[Executing_Remote_Applications_with_Eclipse|Execute Remote Applications]] |
===Compiling and Running Some Software=== | ===Compiling and Running Some Software=== | ||
* [[Importing_the_EMAC_OE_SDK_Projects_with_Eclipse|Import Example Projects]] | * [[Importing_the_EMAC_OE_SDK_Projects_with_Eclipse|Import Example Projects]] | ||
− | * [[ | + | * [[Creating_New_Projects_with_Eclipse|New Project]] |
* [[Remote_Debugging_EMAC_OE_SDK_Projects_with_gdbserver|Debugging With gdbserver]] | * [[Remote_Debugging_EMAC_OE_SDK_Projects_with_gdbserver|Debugging With gdbserver]] | ||
* [[Building_Existing_Software_Packages_with_EMAC_OE_SDK|Building Existing Software]] | * [[Building_Existing_Software_Packages_with_EMAC_OE_SDK|Building Existing Software]] | ||
* [[Using_EMAC_OE_SDK_Example_Projects|Using the EMAC OE SDK Examples Projects]] | * [[Using_EMAC_OE_SDK_Example_Projects|Using the EMAC OE SDK Examples Projects]] | ||
* [[Creating_a_New_EMAC_OE_SDK_Project|Create New EMAC OE SDK Projects]] | * [[Creating_a_New_EMAC_OE_SDK_Project|Create New EMAC OE SDK Projects]] | ||
− | * [[ | + | * [[Debugging_Remote_Applications_with_Eclipse|Debug Remote Applications]] |
==Working With Bootloaders and OS images== | ==Working With Bootloaders and OS images== | ||
− | Bootloaders provide the magic glue between the hardware (or the BIOS, on PC compatible systems) and the operating system. The bootloader is the piece of software which points the processor at the operating system image and kicks off the booting process. The bootloader can also be used to load new firmware onto machines, and perform some other tasks. | + | Bootloaders provide the magic glue between the hardware (or the BIOS, on PC compatible systems) and the operating system. The bootloader is the piece of software which points the processor at the operating system image and kicks off the booting process. The bootloader can also be used to load new firmware onto machines, and perform some other tasks. This section provides instructions for loading new firmware images and customizing the boot process. |
− | |||
− | |||
− | |||
− | |||
* [[U-Boot_Overview|U-Boot Bootloader]] | * [[U-Boot_Overview|U-Boot Bootloader]] | ||
Line 90: | Line 88: | ||
==== Old Bootloader ==== | ==== Old Bootloader ==== | ||
− | If you have a machine which uses the older ''RedBoot'' bootloader, | + | If you have a machine which uses the older ''RedBoot'' bootloader, see the article below. |
− | |||
* [[Loading_Images_with_RedBoot|Loading Images with RedBoot]] | * [[Loading_Images_with_RedBoot|Loading Images with RedBoot]] | ||
Line 106: | Line 103: | ||
==Programming EMAC OE Machines== | ==Programming EMAC OE Machines== | ||
− | + | This section provides some articles for specific to EMAC embedded machines. | |
* [[Using_the_EMAC_GPIO_Class|EMAC GPIO Class]] | * [[Using_the_EMAC_GPIO_Class|EMAC GPIO Class]] | ||
Line 120: | Line 117: | ||
== Quick Reference == | == Quick Reference == | ||
− | EMAC provides a quick reference guide as a "cheatsheet" to assist with the initial learning curve. | + | EMAC provides a quick reference guide as a "cheatsheet" to assist with the initial learning curve. |
− | |||
− | |||
+ | *[[Quick_Reference | EMAC Quick Reference]] | ||
+ | <br clear=all> | ||
---- | ---- | ||
<references /> | <references /> | ||
− | [[Category: OpenEmbedded]] | + | <!-- [[Category: OpenEmbedded]] --> |
Latest revision as of 14:36, 14 March 2014
Contents
Getting Started
Following the list of articles presented here, in order, will provide a good foundation for building custom embedded applications.
Background Information About EMAC Products
Getting To Know Linux
Getting A Linux Development System Up And Running
The LDC - Linux Development Computer
A popular option to getting started quickly is to use the EMAC Linux Development Computer (LDC). There are two variants on this option, as follows:
- The Hardware LDC: This is a desktop computer with EMAC's customized Linux distribution preinstalled with the full EMAC SDK installed and ready to run. This is the most painless method of getting started, especially for those new to Linux and/or developing software under Linux. This is the most preferable system to use for development.
- The LDC Virtual Machine: This is a virtual machine image which can be used in a virtual machine manager, such as VMWare[1] and VirtualBox. This, like the Hardware LDC, has EMAC's customized Linux distribution preinstalled with the full EMAC SDK installed and ready to run. This option works well, but may require additional set up and configuration of the host operating system.
If this is the method chosen, the system should be already configured for development. Skip to the Getting Familiar with Eclipse section.
Customer Installed EMAC SDK Packages On Customer's Existing Linux Computer
EMAC provides SDK packages which can be installed by customers on their own Linux machines. This is the most difficult method of getting started, but is often preferred by customers who are already highly skilled with Linux.
Should this method be chosen, start with the EMAC OE SDK Introduction..
Getting Started With Software Development For EMAC Machines
Getting Familiar with Eclipse
These articles will help in getting started with Eclipse. If some other editor or IDE is used for development work, this step may be skipped. Working with a different IDE is beyond the scope of the EMAC documentation and will be unsupported. Using the shell based build system will, however, still work as documented.
- First Time Starting Eclipse
- Using the Eclipse Terminal View
- Remote System Explorer
- Execute Remote Applications
Compiling and Running Some Software
- Import Example Projects
- New Project
- Debugging With gdbserver
- Building Existing Software
- Using the EMAC OE SDK Examples Projects
- Create New EMAC OE SDK Projects
- Debug Remote Applications
Working With Bootloaders and OS images
Bootloaders provide the magic glue between the hardware (or the BIOS, on PC compatible systems) and the operating system. The bootloader is the piece of software which points the processor at the operating system image and kicks off the booting process. The bootloader can also be used to load new firmware onto machines, and perform some other tasks. This section provides instructions for loading new firmware images and customizing the boot process.
- U-Boot Bootloader
- Archiving JFFS2 Images from Flash
- Mounting JFFS2 Images on a Linux PC
- Creating JFFS2 Images
- Booting over NFS
- Loading Images with U-Boot
- Boot Process Customization
- Loading the Rootfilesystem and Kernel Onto a CF Card
Old Bootloader
If you have a machine which uses the older RedBoot bootloader, see the article below.
Customizing Linux Kernels and Filesystem Images
This section provides documentation on advanced tasks with embedded Linux; namely, custom Linux OS kernel image building and firmware image customization.
- Building the Linux Kernel
- Custom Linux Kernel Development
- Building and Customizing EMAC OE
- Linux Boot Process Customization
Programming EMAC OE Machines
This section provides some articles for specific to EMAC embedded machines.
Getting Support
Quick Reference
EMAC provides a quick reference guide as a "cheatsheet" to assist with the initial learning curve.
- ↑ VMWare is a trademark of VMWare, incorporated