# Compiling problems using ARM 7

**URL:** <https://forums.freertos.org/t/compiling-problems-using-arm-7/3504>\
**Category:** Kernel\
**Created:** [February 19, 2008, 4:18pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504 "2008-02-19T16:18:40Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 19, 2008, 4:18pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/1 "2008-02-19T16:18:40Z")

</div>

**[rebelstar](https://sourceforge.net/u/rebelstar/)** wrote on [Tuesday, February 19, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225):

Hello ,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I am trying to compile free rtos for LPC 2964.  
But i am unable to do so. I get some errors when i run the make file.  
This was in linux environment using gcc.

In windows i ran the .bat files provided using cygwin,but even here i got some errors.

can anyone kindly give the exact steps to compile free rtos on linux and windows environment seperately. What tools do we need in each scenario.This will be of great help as i am stuck in this compilation process itself.

Thanks,  
REBEL star

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 19, 2008, 4:30pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/2 "2008-02-19T16:30:31Z")

</div>

**[woops\_](https://sourceforge.net/u/woops_/)** wrote on [Tuesday, February 19, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/5878):

How can anybody help if you dont say what the errors are?

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 19, 2008, 4:33pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/3 "2008-02-19T16:33:01Z")

</div>

**[davedoors](https://sourceforge.net/u/davedoors/)** wrote on [Tuesday, February 19, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/9b8c):

\>can anyone kindly give the exact steps to compile free rtos on linux and windows environment seperately

Yes, give us the information we need to help you or read the documentation. Do you expect somebody to write you out full instructions here?

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 20, 2008, 6:35am UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/4 "2008-02-20T06:35:41Z")

</div>

**[rebelstar](https://sourceforge.net/u/rebelstar/)** wrote on [Wednesday, February 20, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/2ccc):

Hello i am extremely sorry for not communicating the required information.(And it is LPC2106)  
What i have done is .  
1) I am using arm-none-linux-gnueabi&nbsp; compiler for building freertos.  
2) Cygwin interface to run commands.  
3)In make file i made a change to CC option as  
CC=arm-none-linux-gnueabi-gcc&nbsp; instead of CC=arm-elf-gcc  
4) I mount to the&nbsp; directory structure c:\FreeRtos\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>  
&nbsp;&nbsp;&nbsp; and ran the batch file ram\_arm.bat.

The error i got was as below ( i am pasting the entire logfile)

c:\FreeRtos\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set USE\_THUMB\_MODE=NO

c:\FreeRtos\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set DEBUG=-g

c:\FreeRtos\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set OPTIM=-O0

c:\FreeRtos\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set RUN\_MODE=RUN\_FROM\_RAM

c:\FreeRtos\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set LDSCRIPT=lpc2106-ram.ld

c:\FreeRtos\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>make  
arm-none-linux-gnueabi-gcc -c -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-funct  
ion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmi  
ssing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I.  
-I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld -  
O0 -fomit-frame-pointer serial/serialISR.c -o serial/serialISR.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer main.c -o main.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer serial/serial.c -o serial/serial.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer ParTest/ParTest.c -o ParTest/ParTest.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/integer.c -o …/Common/Minimal/intege  
r.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/flash.c -o …/Common/Minimal/flash.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/PollQ.c -o …/Common/Minimal/PollQ.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/comtest.c -o …/Common/Minimal/comtes  
t.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/flop.c -o …/Common/Minimal/flop.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/semtest.c -o …/Common/Minimal/semtes  
t.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/dynamic.c -o …/Common/Minimal/dynami  
c.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/Common/Minimal/BlockQ.c -o …/Common/Minimal/BlockQ.  
o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/…/Source/tasks.c -o …/…/Source/tasks.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/…/Source/queue.c -o …/…/Source/queue.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/…/Source/list.c -o …/…/Source/list.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/…/Source/portable/MemMang/heap\_2.c -o …/…/Source/  
portable/MemMang/heap\_2.o  
arm-none-linux-gnueabi-gcc -c&nbsp; -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-func  
tion-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wm  
issing-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I  
. -I…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld  
-O0 -fomit-frame-pointer …/…/Source/portable/GCC/ARM7\_LPC2000/port.c -o …/…/  
Source/portable/GCC/ARM7\_LPC2000/port.o  
arm-none-linux-gnueabi-gcc -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-function  
-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissi  
ng-prototypes -Wmissing-declarations -Wunused -D RUN\_FROM\_RAM -D GCC\_ARM7 -I. -I  
…/…/Source/include -I…/Common/include -g -mcpu=arm7tdmi -Tlpc2106-ram.ld -O0  
-fomit-frame-pointer …/…/Source/portable/GCC/ARM7\_LPC2000/portISR.o serial/ser  
ialISR.o main.o serial/serial.o ParTest/ParTest.o …/Common/Minimal/integer.o …  
/Common/Minimal/flash.o …/Common/Minimal/PollQ.o …/Common/Minimal/comtest.o …  
/Common/Minimal/flop.o …/Common/Minimal/semtest.o …/Common/Minimal/dynamic.o .  
./Common/Minimal/BlockQ.o …/…/Source/tasks.o …/…/Source/queue.o …/…/Source  
/list.o …/…/Source/portable/MemMang/heap\_2.o …/…/Source/portable/GCC/ARM7\_LP  
C2000/port.o -nostartfiles boot.s -Xlinker -ortosdemo.elf -Xlinker -M -Xlinker -  
Map=rtosdemo.map  
c:/program files/codesourcery/sourcery g++ lite/bin/…/lib/gcc/arm-none-linux-gn  
ueabi/4.2.1/…/…/…/…/arm-none-linux-gnueabi/bin/ld.exe: error: no memory regi  
on specified for loadable section `.interp’  
collect2: ld returned 1 exit status  
make: \*\*\* [rtosdemo.elf] Error 1

Many Thanks,  
kishore.

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 20, 2008, 6:54am UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/5 "2008-02-20T06:54:52Z")

</div>

**[davedoors](https://sourceforge.net/u/davedoors/)** wrote on [Wednesday, February 20, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/2ccc/0312):

Everything is compiling without error, but not linking. It might that there is an incompatibility between your version of GCC and the linker script.

I’m not fammiliar with building on Linux, is arm-none-linux-gnueabi just a standard cross compiler, not one specific for building linux kernels? This might be a dumb question its just my ignorance of linux. I know code sourcery do a linux version of the ARM cross compiler. [http://www.codesourcery.com/gnu\_toolchains/arm/download.html](http://www.codesourcery.com/gnu_toolchains/arm/download.html).

A quick google shows the following about the missing .interp section

“.interp  
This section holds the path name of a program interpreter. If the file has a loadable segment that includes relocation, the sections’ attributes…”

This does not seem right for a static build. Could it just be the version of GCC that is not correct?

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 20, 2008, 1:00pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/6 "2008-02-20T13:00:26Z")

</div>

**[rebelstar](https://sourceforge.net/u/rebelstar/)** wrote on [Wednesday, February 20, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/7240):

Hello ,  
The version of the tool chain is&nbsp; 2007 q3-51.

I think arm-none-linux-gnueabi is a standard cross tool compiler because in the documentation he explains&nbsp; its usage in windows platfor using cygwin.

Actually all the objet files are created and as you rightly said, there is a linking problem.  
However the output of the process was a file called&nbsp; rtosdemo.map&nbsp; the contents of which are  
Archive member included because of file (symbol)

c:/program files/codesourcery/sourcery g++ lite/bin/…/lib/gcc/arm-none-linux-gnueabi/4.2.1\libgcc.a(\_udivsi3.o)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serial/serial.o (\_\_aeabi\_uidiv)  
c:/program files/codesourcery/sourcery g++ lite/bin/…/lib/gcc/arm-none-linux-gnueabi/4.2.1\libgcc.a(\_arm\_addsubdf3.o)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; …/Common/Minimal/flop.o (\_\_aeabi\_dsub)  
c:/program files/codesourcery/sourcery g++ lite/bin/…/lib/gcc/arm-none-linux-gnueabi/4.2.1\libgcc.a(\_arm\_muldivdf3.o)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; …/Common/Minimal/flop.o (\_\_aeabi\_dmul)  
c:/program files/codesourcery/sourcery g++ lite/bin/…/lib/gcc/arm-none-linux-gnueabi/4.2.1\libgcc.a(\_arm\_cmpdf2.o)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; …/Common/Minimal/flop.o (\_\_aeabi\_dcmpgt)  
c:/program files/codesourcery/sourcery g++ lite/bin/…/lib/gcc/arm-none-linux-gnueabi/4.2.1\libgcc.a(\_dvmd\_lnx.o)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; c:/program files/codesourcery/sourcery g++ lite/bin/…/lib/gcc/arm-none-linux-gnueabi/4.2.1\libgcc.a(\_udivsi3.o) (\_\_div0)

Allocating common symbols  
Common symbol&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; file

xSuspendedTestQueue  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0x4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; …/Common/Minimal/dynamic.o

And&nbsp; in the makefile ,there is a reference to the error -----nostartfiles boot.s -Xlinker -ortosdemo.elf -Xlinker -M -Xlinker -  
Map=rtosdemo.map

Segement of the Makefile is here

rtosdemo.hex : rtosdemo.elf  
&nbsp;&nbsp;&nbsp; $(OBJCOPY) rtosdemo.elf -O ihex rtosdemo.hex

rtosdemo.elf : $(ARM\_OBJ) $(THUMB\_OBJ) $(CRT0) Makefile  
&nbsp;&nbsp;&nbsp; $(CC) $(CFLAGS) $(ARM\_OBJ) $(THUMB\_OBJ) -nostartfiles $(CRT0) $(LINKER\_FLAGS)

$(THUMB\_OBJ) : %.o : %.c $(LDSCRIPT) Makefile  
&nbsp;&nbsp;&nbsp; $(CC) -c $(THUMB\_FLAGS) $(CFLAGS) $\< -o $@

$(ARM\_OBJ) : %.o : %.c $(LDSCRIPT) Makefile  
&nbsp;&nbsp;&nbsp; $(CC) -c $(CFLAGS) $\< -o $@

Thanks,  
Kishore

---

<div class="post-metadata">

**Author:** ![chaalar](https://avatars.discourse-cdn.com/v4/letter/c/d6d6ee/32.png) [@chaalar](https://forums.freertos.org/u/chaalar)\
**Post date:** [February 20, 2008, 2:16pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/7 "2008-02-20T14:16:05Z")

</div>

**[chaalar](https://sourceforge.net/u/chaalar/)** wrote on [Wednesday, February 20, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/1196):

You can not use an arm-linux toolchain to build freertos. You need to use a bare-metal toolchain(arm-elf).  
Moreover you don’t need to tackle with cygwin. I’m using winarm arm-elf toolchain without cygwin. But  
if you want cygwin, you can also obtain an arm-elf toolchain from [www.gnuarm.com](http://www.gnuarm.com) for cygwin.

And please be sure that whole freertos project tree is compiling under Linux/Windows out of the box, provided that  
system dependencies are satisfied.

Regards,  
Caglar

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 20, 2008, 5:44pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/8 "2008-02-20T17:44:55Z")

</div>

**[rebelstar](https://sourceforge.net/u/rebelstar/)** wrote on [Wednesday, February 20, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/5d36):

Hello,  
I am now using winARM elf tool chain.  
The free rtos directory structure -( i have tried with both windows platform specific and platform independent files.)

But i get the following compiler errors ( in both cases)

D:\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>rom\_arm.bat

D:\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set USE\_THUMB\_MODE=NO

D:\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set DEBUG=

D:\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set OPTIM=-O3

D:\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set RUN\_MODE=RUN\_FROM\_ROM

D:\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>set LDSCRIPT=lpc2106-rom.ld

D:\FreeRTOS\Demo\ARM7\_LPC2106\_GCC\>make  
arm-elf-gcc -c -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast  
-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototype  
s -Wmissing-declarations -Wunused -D RUN\_FROM\_ROM -D GCC\_ARM7 -I. -I…/…/Source  
/include -I…/Common/include&nbsp; -mcpu=arm7tdmi -Tlpc2106-rom.ld -O3 -fomit-frame-p  
ointer …/…/Source/portable/GCC/ARM7\_LPC2000/portISR.c -o …/…/Source/portable  
/GCC/ARM7\_LPC2000/portISR.o  
process\_begin: CreateProcess((null), arm-elf-gcc -c -Wall -Wextra -Wshadow -Wpoi  
nter-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -W  
strict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused -D RUN\_FR  
OM\_ROM -D GCC\_ARM7 -I. -I…/…/Source/include -I…/Common/include -mcpu=arm7tdmi  
-Tlpc2106-rom.ld -O3 -fomit-frame-pointer …/…/Source/portable/GCC/ARM7\_LPC200  
0/portISR.c -o …/…/Source/portable/GCC/ARM7\_LPC2000/portISR.o, …) failed.  
make (e=2): The system cannot find the file specified.  
make: \*\*\* […/…/Source/portable/GCC/ARM7\_LPC2000/portISR.o] Error 2

Thanks,  
Kishore

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 20, 2008, 5:51pm UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/9 "2008-02-20T17:51:04Z")

</div>

**[rebelstar](https://sourceforge.net/u/rebelstar/)** wrote on [Wednesday, February 20, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/5351):

sorry, issue solved…  
The path variable was wrongly set this time.

Many thanks,  
Kishore…

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [February 21, 2008, 5:34am UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/10 "2008-02-21T05:34:02Z")

</div>

**[rebelstar](https://sourceforge.net/u/rebelstar/)** wrote on [Thursday, February 21, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/3fcf):

Hello,  
&nbsp;&nbsp;&nbsp;&nbsp; Now i want to compile the same for LPC2294.But the required files are not present in the freertos directory structure.

If i want to compile and generate hex files for Lpc2294, what all changes do i need to make.( like linker scripts etc…i do not exactly know what all to change. )  
Can any one plz answer…

Thanks,  
rebelstar

---

<div class="post-metadata">

**Author:** ![rtel](https://d3iykfbgfh8zhg.cloudfront.net/user_avatar/forums.freertos.org/rtel/32/31_2.png) [@rtel](https://forums.freertos.org/u/rtel)\
**Post date:** [February 21, 2008, 9:24am UTC](https://forums.freertos.org/t/compiling-problems-using-arm-7/3504/11 "2008-02-21T09:24:54Z")

</div>

**[rtel](https://sourceforge.net/u/rtel/)** wrote on [Thursday, February 21, 2008](https://sourceforge.net/p/freertos/discussion/382005/thread/9b798e5b/#5225/3fcf/63a2):

All you should need to change are the memory sizes to be correct for the LPC2294 - these can be found at the top of the linker script.

Regards.
