Jump to content

Toolchain setup under GNU/Linux (including Eclipse)

Recommended Posts

Okay, I guess I'm close to the solution. 


make all 
Building target: proba.elf
Invoking: Cross GCC Linker
arm-none-eabi-gcc -L/home/erbal/DEV/driverlib/gcc-cm4f -Wl,--static,--gc-sections,-T../LM4F.ld -mthumb -mcpu=cortex-m4 -o "proba.elf"  ./interrupts.o ./startup_gcc.o   -ldriver-cm4f
/usr/lib/gcc/arm-none-eabi/4.8.2/../../../../arm-none-eabi/bin/ld: cannot open linker script file ../LM4F.ld: No such file or directory
makefile:29: recipe for target 'proba.elf' failed
collect2: error: ld returned 1 exit status
make: *** [proba.elf] Error 1

Somehow the eclipse doesn't find the LM4F.ld file. 

Edit.: I had to rename the file, from the sample project "interrupt.ld" to LM4F.ld. :)

Link to post
Share on other sites
  • 1 month later...

Hey Guys!

Finally, I had a short time to set everything up, and use eclipse to code. I still have a tiny problem, I can flash in terminal, but if I try to flash from eclipse I get this error: 

fopen: No such file or directory
Found ICDI device with serial: 0E1001ED



edit: SOLVED: the .bin was generated to the wrong folder

Link to post
Share on other sites
  • 6 months later...
I have successfully configured a Linux/Ubuntu/Eclipse/openocd development environment for the TIVA. I pretty much followed Kernel Hacks and made necessary changes to incorporate the advances in tools.
Question: Can I develop C++ software based on the above configuration? If so what are the necessary required changes.
Base on the above I created a Eclipse C++ project, uploaded the blinky files and tried to compile and I got the following linker error for g++ linker. 
Invoking: Cross GCC Compiler
arm-none-eabi-gcc -DPART_TM4C1233H6PM -D ARM_MATH_CM4 -DTARGET_IS_BLIZZARD_RA1 -I/home/userid/SW-TM4C- -O0 -g3 -Wall -c -fmessage-length=0 -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=softfp -ffunction-sections -fdata-sections -MMD -MP -MF"startup_gcc.d" -MT"startup_gcc.d" -o "startup_gcc.o" "../startup_gcc.c"
../startup_gcc.c: In function 'ResetISR':
../startup_gcc.c:245:26: warning: unused variable 'pui32Dest' [-Wunused-variable]
     uint32_t *pui32Src, *pui32Dest;
../startup_gcc.c:245:15: warning: variable 'pui32Src' set but not used [-Wunused-but-set-variable]
     uint32_t *pui32Src, *pui32Dest;
Finished building: ../startup_gcc.c
Building target: Tiva_Project01.elf
Invoking: Cross G++ Linker
arm-none-eabi-g++ -L/home/userid/SW-TM4C- -o "Tiva_Project01.elf"  ./main.o ./startup_gcc.o   -ldriver
/home/userid/MentorGraphics/Sourcery_CodeBench_Lite_for_ARM_EABI/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: warning: cannot find entry symbol _start; defaulting to 00008018
./startup_gcc.o: In function `zero_loop':
startup_gcc.c:(.text.ResetISR+0x44): undefined reference to `_bss'
startup_gcc.c:(.text.ResetISR+0x48): undefined reference to `_ebss'
collect2: error: ld returned 1 exit status
make: *** [Tiva_Project01.elf] Error 1

Is this possible? If not what are the required changes? Can someone point to blog, tutorial or any other source that might help me in this endeavor. I have done a few google searches, but have been able to find anything worthwhile yet. 


Thank you in advance.


Link to post
Share on other sites

bss/ebss errors "smells of" missing linker file definitions




Maybe try one of the energia linkerfiles (they seem to have bss/ebss)








Ohh and i'd recommend to drop the Codesourcery compiler , and get the arm-gcc compiler from launchpad.






Link to post
Share on other sites

Btw ... have never tried Energia , but have just build it from github (Linux Mint 17 / Ubuntu 14.04).

A 1.2GB "clone"   :o  , but very fast build of whatever has to been build , certainly not the compilers (only took a few minutes)


It took me a few minutes to find the "executables" , that's placed in : Energia/build/linux/work


I didn't want to use "ant run" every time i wanted to start energia.

Link to post
Share on other sites
  • 2 weeks later...

Hi guys, my first post in this forum.

I just finished an installation guide for gcc-arm-embedded toolchain (arm-none-eabi) + lm4flash + openocd with tivaware libs in Ubuntu 14.04 amd64; and the eclipse setup needed to program/compile/debug the tiva Launchpad EK-TM4C123GXL.

There are some parts in spanish, but all the commands and eclipse instructions are in english.

Hope you find it useful, and if doesn't work please let me know (here or in my blog) to make the corrections needed ;) .


Link to post
Share on other sites


Just read your blog and noticed you used gnuarmeclise site only for info, not installing, not taking any benefit of this package: templates for micros,   newlib use, managed make, detailed settings, bin file generation for Tiva, so on.

Also, useful for users is the EmbeddedRegisterView package, allow to see content of peripheral registers by names, not searching in memory vies by addresses.

Link to post
Share on other sites
  • 2 months later...

Hello. After coming back to the Tiva after a few months, I'm not able to get the toolchain running again. I keep getting the error

make: arm-none-eabi-gcc: Command not found
make: arm-none-eabi-gcc: Command not found
make: arm-none-eabi-gcc: Command not found
  CC    blinky.c
make: arm-none-eabi-gcc: Command not found
make: *** [gcc/blinky.o] Error 127

This is after trying to install several versions of the cross-complier and following the instructions here. I know its probably something stupid, but I don't see what I'm doing differently from after reinstalling my os. I'm running PinguyOS now.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...