Windows下使用Eclipse交叉編譯ARM
原文:http://www.acmesystems.it/foxg20_eclipse_windows_c
先轉過來,有時間再翻譯。Developing in C/C++ with Eclipse Indigo on Windows
This article illustrates how to use Eclipse Indigo IDE to cross compiling your C/C++ code on a Windows PC and run it on a FOX Board G20.
Eclipse is a multi-language software development environment comprising an IDE and a plug-in system to extend it. It is written primarily in Java and can be used to develop applications in Java and, by means of the various plug-ins, in other languages as well, including C, C++, Python, Perl
Install Eclipse Indigo
Download Eclipse IDE for C/C++ Developers for Windows from the Eclipse website:
Uncompress the ZIP file directly in the working directory (i.e. c:\eclipse) and execute eclipse.exe to run Eclipse on your desktop.
The welcome screen will appear:
Install the ARM plugins
To make the cross compilation procedure simple, install a plugin called GNU ARM Eclipse Plug-in.
Open the install form selecting the "Help –> Install New Software…" menu item then copy in the "Work with:" field this URL: "http://gnuarmeclipse.sourceforge.net/updates".
Uncheck the "Group items by category" to display the ARM plugins available.
Check the GNU ARM C/C++ Development Support item and press the Next button.
Sourcery CodeBench Lite 2011.09-70 for ARM GNU/Linux
Sourcery CodeBench Lite 2011.09-70 for ARM GNU/Linux is a complete C/C++ development environment based on the GNU Toolchain which is freely available and has a quick installer that also manages the path variables to simplify the calls to the executable everywhere inside your computer.
Run the executable file to install it and select the Typical installation.
When the message box "Chose Install Folder" appears, type a simple path like c:\codesourcery avoid using the default path. On my Windows XP for example the default path is C:\Program Files\CodeSourcery\Sourcery_CodeBench_Lite_for_ARM_GNU_Linux that Eclipse will probably not manage.
The last step to carry out is to remove the part "linux-gnu" in the filename of some executable files located in c:\codesourcery\bin.
For example arm-none-linux-gnueabi-gcc.exe must become arm-none-eabi-gcc.exe used by default by the Eclipse ARM plugin.
List of renaming to do:
Original name | New name |
---|---|
arm-none-linux-gnueabi-gcc.exe | arm-none-eabi-gcc.exe |
arm-none-linux-gnueabi-gdb.exe | arm-none-eabi-gdb.exe |
arm-none-linux-gnueabi-ld.exe | arm-none-eabi-ld.exe |
arm-none-linux-gnueabi-objcopy.exe | arm-none-eabi-objcopy.exe |
arm-none-linux-gnueabi-objdump.exe | arm-none-eabi-objdump.exe |
arm-none-linux-gnueabi-size.exe | arm-none-eabi-size.exe |
Eclipse should be able now to call the xcross executables needed to deploy the FOXG20 ARM processor.
Create your first project
Create a new C Project in Eclipse starting from the menu:
File | +- New +- C Project
Insert your project name (for example hello) and select the toolchains ARM Windows GCC (Sourcery G++ Lite) then press the Next button.
On the next form press Advanced setting... button.
The project properties form will appear.
Set:
C/C++ Build | +- Settings. Tab: Tool Settings: | | | +- Target processor: arm962ej-s | +- Thumb (-mthumb): checked +- Debugging | | | +- Debug format: Toolchain default +- Additional tools | | | +- Create Flash Image: unchecked +- AARM Sourcery Windows GCC C Linker | +- Do not use standard start files: unchecked
Type the OK button and Finish button to save and continue.
Create a new source file:
Menu | +- File +- Source File
and call it for example hello.c then fill it with the classic Hello World ! example listed below:
#include"stdio.h"int main(void){ printf("Hello world !\n");return0;}
Compile the source selecting Project -> Build project
Run on the FOX Board G20
After a build, you will obtain a file called hello.elf. Copy this file on the FOX Board G20 and set it as executable with the command:
debarm:~# chmod +x hello.elf
The run it:
debarm:~# ./hello.elf Hello world !
Related links
Credits
Thanks to Andrea Leganza for the original contents of this article.