How to setup GCC-based toolchain

cancel
Showing results for 
Search instead for 
Did you mean: 

How to setup GCC-based toolchain

Jump to solution
6,726 Views
Contributor III

Hello,

I'm looking for some guidance on programming for LPC modules (especially LPC1768) and have a few questions:

  1. There are recent builds of GCC toolchain available for these architectures (GNU Arm Embedded Toolchain – Arm Developer ). Where I can find the headers, libraries, and drivers for a specific LPC module from NXP website?
  2. Is there any limitations on the available C++ features in those toolchains (e.g. C++ threads, mutexes)? The Keil has the concept of "Task" for threading. How can multi-threading can be accomplished with these generic GCC toolchains?
  3. What tools do you recommend that provides a recent compiler support (e.g. C++14) together with support for hardware/debugging? Some options that come to my mind:

Labels (1)
Tags (3)
0 Kudos
1 Solution
340 Views
NXP Employee
NXP Employee

Hi Isaac,

1) I recommend that you use the MCUXpresso IDE (MCUXpresso IDE|NXP ) with the MCUXPresso SDK (Welcome to MCUXpresso | MCUXpresso Config Tools ): that way you get everything and you don't have to worry about all the parts and all the setup. Of course you can build your own toolchain and IDE, but this requires a decent knowledge of all the parts and pieces. I wrote several tutorials (see Breathing with Oxygen: DIY ARM Cortex-M C/C++ IDE and Toolchain with Eclipse Oxygen | MCU on Eclipse ), but again I recommend this only if you are really an expert and if you have very special needs. And again: get the MCUXpresso IDE and then you have something working and a solid base (you still could do a DIY afterwards if you really insist).

2) the standard way is to use FreeRTOS (freertos.org). Here again you have everything setup for you in the MCUXpresso SDK and MCUXpresso IDE. This gives you threads/mutexes/semaphores plus all the needed debug views inside the MCUXpresso IDE and C++ support.

3) Here again, I recommend to use the MCUXpresso IDE which comes with the GNU gcc toolchain. The current version of the IDE is v10.0.2, but there will be a new version in the near future which integrates the latest GNU toolchain with all the latest bells and whistles for C++. It supports the P&E, Segger and LPC-Link2 (CMSIS-DAP, LinkServer) debug probes (see LPC-Link2 Debug Probe | MCU on Eclipse ).

I hope this helps,

Erich

View solution in original post

0 Kudos
3 Replies
341 Views
NXP Employee
NXP Employee

Hi Isaac,

1) I recommend that you use the MCUXpresso IDE (MCUXpresso IDE|NXP ) with the MCUXPresso SDK (Welcome to MCUXpresso | MCUXpresso Config Tools ): that way you get everything and you don't have to worry about all the parts and all the setup. Of course you can build your own toolchain and IDE, but this requires a decent knowledge of all the parts and pieces. I wrote several tutorials (see Breathing with Oxygen: DIY ARM Cortex-M C/C++ IDE and Toolchain with Eclipse Oxygen | MCU on Eclipse ), but again I recommend this only if you are really an expert and if you have very special needs. And again: get the MCUXpresso IDE and then you have something working and a solid base (you still could do a DIY afterwards if you really insist).

2) the standard way is to use FreeRTOS (freertos.org). Here again you have everything setup for you in the MCUXpresso SDK and MCUXpresso IDE. This gives you threads/mutexes/semaphores plus all the needed debug views inside the MCUXpresso IDE and C++ support.

3) Here again, I recommend to use the MCUXpresso IDE which comes with the GNU gcc toolchain. The current version of the IDE is v10.0.2, but there will be a new version in the near future which integrates the latest GNU toolchain with all the latest bells and whistles for C++. It supports the P&E, Segger and LPC-Link2 (CMSIS-DAP, LinkServer) debug probes (see LPC-Link2 Debug Probe | MCU on Eclipse ).

I hope this helps,

Erich

View solution in original post

0 Kudos
340 Views
Contributor III

Hi Erich,

Do you know what version of GCC is currently shipped with MCUXpresso? We are planning to use flatbuffers library for message passing and its generated code requires a C++11 compiler.

Nevertheless, I am going to give MCUXpresso a try and follow your tutorial if the were any serious obstacles. A plus for MCUXpresso is being based on Eclipse which we are already familiar with. BTW, cool name for IDE! 

Thank you for the quick response,

Isaac

0 Kudos
340 Views
NXP Employee
NXP Employee

Hi Isaac,

MCUXpresso IDE V10.0.2 b411 is currently shipping with GNU Tools for ARM Embedded Processors 5 - Q3 2016.

Erich

0 Kudos