This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

CDT Build Output Parser Eclipse + SDK 14.1.0 (ble_app_tt_mtu_throughput)

Hello,

I am currently experimenting with some throughput tests on nRF52832/nRF52840 DKs. Some time ago I worked with some BLE UART examples from SDK 13.0 with the help of Eclipse. Everything worked fine after going through this tutorial. Now I wanted to extend the btt_app_att_mtu_throughput example from SDK 14.1.0 and started by "converting" it to an Eclipse project like before.

  • changed Compiler command pattern under Project Properties -> C/C++ General -> Preprocessor Include Paths -> Providers -> CDT Build Output Parser to (.gcc)|(.[gc]++) and removed tick on Use heuristics to resolve paths
  • replaced ${COMMAND} under CDT ARM Cross GCC Bult-in Compiler Settings with arm-none-eabi-gcc
  • replaced Makefile.common under …/SDK14.1.0/components/toolchain/gcc with the patched one from the tutorial, but removed "/bin/" from toolchain commands ("CC:= '$(GNU_INSTALL_ROOT)$(GNU_PREFIX)-gcc'"), as an error was thrown and changed the calling of "[…]file_list.mk" to "[…]dump.mk"
  • initiated make clean, make all and rebuilt the index

My build output looks something like this (shortened!):

'/opt/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc' -MP -MD -std=c99 -O3 -g3 -D[…] -mcpu=cortex-m4 -mthumb -mabi=aapcs -Wall -Werror -mfloat-abi=hard -mfpu=fpv4-sp-d16 -ffunction-sections -fdata-sections -fno-strict-aliasing -fno-builtin -fshort-enums  -I"<SDK_ROOT/x>"   -I"<SDK_ROOT/y>"-I"<SDK_ROOT/z>"[…]

So, I guess it looks fine. Seems to be the same, like in my other projects, but there are no entries for the include files listed under Project Properties -> C/C++ General -> Preprocessor Include Paths -> Entries -> GNU C, except for the Compiler Settings under the same tab. The output parser is working fine in my other older projects.

Additionally, with the modified makefile.common I am running into a warning at the end of the build process:

/opt/gcc-arm-none-eabi-6-2017-q1-update/bin/../lib/gcc/arm-none-eabi/6.3.1/../../../../arm-none-eabi/bin/ld: warning: cannot find entry symbol Reset_Handler; defaulting to 0000000000023000

I am not very "skilled" in writing Makefiles, so maybe there are some issues with the new file I am missing. So, is there anything I haven't thought of?

Thank you very much!

Regards, Björn

Parents
  • Hi,

    Have you considered using Seeger Embedded Studio instead of Eclipse?

    With the release of SDK 14.1, we have added support for Segger Embedded Studio (SES) IDE. You can use Segger Embedded Studio for commercial and non-commercial purpose with Nordic Semiconductor devices free of charge without any code limit. See this article for more information. I would therefore recommend using SES.

    I would also add a quote from RK from this post:

    I wouldn't recommend anyone use Eclipse for embedded development if they have any other choice or unless they are a heavy Eclipse user in general and want to stay on one platform. Given that SES is now free for even commercial Nordic development, the SDK comes with SES projects in it as well as Keil and IAR and GCC so it's fully supported and licensed by Nordic, it was written for embedded development, not just had it tacked on badly as Eclipse did and works natively with Segger, not via the terrible GDBServer interface it's hard to find a good reason not to use it.


    You can download SDK 14.1 here.

    You can download Segger Embedded Studio from here.

Reply
  • Hi,

    Have you considered using Seeger Embedded Studio instead of Eclipse?

    With the release of SDK 14.1, we have added support for Segger Embedded Studio (SES) IDE. You can use Segger Embedded Studio for commercial and non-commercial purpose with Nordic Semiconductor devices free of charge without any code limit. See this article for more information. I would therefore recommend using SES.

    I would also add a quote from RK from this post:

    I wouldn't recommend anyone use Eclipse for embedded development if they have any other choice or unless they are a heavy Eclipse user in general and want to stay on one platform. Given that SES is now free for even commercial Nordic development, the SDK comes with SES projects in it as well as Keil and IAR and GCC so it's fully supported and licensed by Nordic, it was written for embedded development, not just had it tacked on badly as Eclipse did and works natively with Segger, not via the terrible GDBServer interface it's hard to find a good reason not to use it.


    You can download SDK 14.1 here.

    You can download Segger Embedded Studio from here.

Children
No Data
Related