MSP430 build using V3 and linux

nobody wrote on Saturday, May 07, 2005:

up to now it worked great with FreeRtos. Now I download the new version into a new directory and was trying to  compile the MSP430 port before I work with my own stuff.

But it’s not possible to compile and link. ( gcc, linux ) Think it’s based on active 2.6 stuff ( e.g. portmacro.h ) in the tree.

Is it known already?

nobody wrote on Saturday, May 07, 2005:

Hi Peter,

I am using mspgcc under win32 (cygwin).  It seems to build without any problems (output below).  I cannot test under linux unfortunately.  Win32 is a lot more fogiving as far as the direction of slashes (/ \) and the case sensitivity so maybe there is something wrong there.

A couple of questions for you.

1) Does the V3.0.0 demo project build when unmodified (from the demo/mspgcc directory)?

2) If not, what is the error message?  Can you provide the output of the build?

3) Which version of gcc are you using?

Regards.

Build output:

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused main.c -o main.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused ParTest/ParTest.c -o
ParTest/ParTest.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused serial/serial.c -o se
rial/serial.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/tasks.c
-o …/…/Source/tasks.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/list.c -
o …/…/Source/list.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/queue.c
-o …/…/Source/queue.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/portable
/MemMang/heap_1.c -o …/…/Source/portable/MemMang/heap_1.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/portable
/GCC/MSP430F449/port.c -o …/…/Source/portable/GCC/MSP430F449/port.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/fla
sh.c -o …/Common/Minimal/flash.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/int
eger.c -o …/Common/Minimal/integer.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/com
test.c -o …/Common/Minimal/comtest.o

msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-c
ast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/Pol
lQ.c -o …/Common/Minimal/PollQ.o

msp430-gcc main.o ParTest/ParTest.o serial/serial.o …/…/Source/tasks.o …/…/Source/list.o …/…/Source/queue.o …/…/Source/portable/MemMang/h
eap_1.o …/…/Source/portable/GCC/MSP430F449/port.o …/Common/Minimal/flash.o …/Common/Minimal/integer.o …/Common/Minimal/comtest.o …/Common/M
inimal/PollQ.o -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-
cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused

nobody wrote on Saturday, May 07, 2005:

Hi,
here are some more details.
I’m using the original 3.0 download file.
msp430-gcc version 3.2.3 ( linux )
Up to now it works fine with FreeRtos 2.6.

unzip FreeRTOSV3.0.0.zip
  ```
  ~~
  ~
  inflating: FreeRTOS/License/license.txt
FreeRTOS/3.0> cd FreeRTOS/
3.0/FreeRTOS> ll
total 5
drwxr-xr-x  19 plange applic 632 May  7 21:30 Demo
drwxr-xr-x   2 plange applic  80 May  7 21:30 License
drwxr-xr-x   4 plange applic 200 May  7 21:30 Source
drwxr-xr-x   2 plange applic 176 May  7 21:30 TraceCon
-rw-r–r--   1 plange applic 452 Apr 13 16:01 readme.txt
3.0/FreeRTOS> cd Demo/
FreeRTOS/Demo> cd msp430
Demo/msp430> ln -s Makefile makefile
Demo/msp430> ll
total 24
-rw-r–r--  1 plange applic 2961 Apr 20 21:07 FreeRTOSConfig.h
-rw-r–r--  1 plange applic 2605 Apr 13 16:26 Makefile
drwxr-xr-x  2 plange applic   80 May  7 21:30 ParTest
-rw-r–r--  1 plange applic   83 Oct  3  2004 gdb.ini
-rw-r–r--  1 plange applic 8865 Apr 20 21:05 main.c
lrwxrwxrwx  1 plange applic    8 May  7 17:04 makefile -> Makefile
drwxr-xr-x  2 plange applic   72 May  7 21:30 serial
Demo/msp430> pwd
/Peter/msp430/FreeRTOS/3.0/FreeRTOS/Demo/msp430

Demo/msp430> which msp430-gcc
/usr/local/msp430/bin/msp430-gcc
Demo/msp430>
                                           
Demo/msp430>
Demo/msp430> make clean
touch makefile
Demo/msp430> make
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused main.c -o main.o
In file included from main.c:64:
…/…/Source/include/FreeRTOS.h:43:22: ProjDefs.h: No such file or directory
In file included from …/…/Source/include/FreeRTOS.h:49,
                 from main.c:64:
…/…/Source/include/portable.h:116: syntax error before “pdTASK_CODE”
…/…/Source/include/portable.h:116: warning: function declaration isn’t a prototype
In file included from main.c:65:
…/…/Source/include/task.h:198: syntax error before “pvTaskCode”
…/…/Source/include/task.h:198: warning: function declaration isn’t a prototype
main.c: In function `vErrorChecks’:
main.c:170: `pdPASS’ undeclared (first use in this function)
main.c:170: (Each undeclared identifier is reported only once
main.c:170: for each function it appears in.)
main.c: In function `prvCheckOtherTasksAreStillRunning’:
main.c:186: `pdTRUE’ undeclared (first use in this function)
main.c:197: `pdFALSE’ undeclared (first use in this function)
make: *** [main.o] Error 1
Demo/msp430>

Is the reference to portable.h still correct?

Peter

nobody wrote on Saturday, May 07, 2005:

Demo/msp430> find …/…/…/ -name "*.h" -print | grep -i defs.h
…/…/…/FreeRTOS/Source/include/projdefs.h
Demo/msp430> pushd …/…/…/FreeRTOS/Source/include/
/Peter/msp430/FreeRTOS/3.0/FreeRTOS/Source/include /Peter/msp430/FreeRTOS/3.0/FreeRTOS/Demo/msp430
Source/include> ls
FreeRTOS.h  list.h  portable.h  projdefs.h  queue.h  semphr.h  task.h
Source/include> ln -s projdefs.h ProjDefs.h

Demo/msp430> make clean
touch makefile
Demo/msp430> make
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused main.c -o main.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused ParTest/ParTest.c -o ParTest/ParTest.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused serial/serial.c -o serial/serial.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/tasks.c -o …/…/Source/tasks.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/list.c -o …/…/Source/list.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/queue.c -o …/…/Source/queue.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/portable/MemMang/heap_1.c -o …/…/Source/portable/MemMang/heap_1.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/…/Source/portable/GCC/MSP430F449/port.c -o …/…/Source/portable/GCC/MSP430F449/port.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/flash.c -o …/Common/Minimal/flash.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/integer.c -o …/Common/Minimal/integer.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/comtest.c -o …/Common/Minimal/comtest.o
msp430-gcc -c -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused …/Common/Minimal/PollQ.c -o …/Common/Minimal/PollQ.o
msp430-gcc main.o ParTest/ParTest.o serial/serial.o …/…/Source/tasks.o …/…/Source/list.o …/…/Source/queue.o …/…/Source/portable/MemMang/heap_1.o …/…/Source/portable/GCC/MSP430F449/port.o …/Common/Minimal/flash.o …/Common/Minimal/integer.o …/Common/Minimal/comtest.o …/Common/Minimal/PollQ.o -mmcu=msp430x449 -Os -g -I. -I…/…/Source/include -I…/Common/include -DGCC_MSP430 -Wall -Wshadow -Wpointer-arith-Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused
Demo/msp430>

rtel wrote on Sunday, May 08, 2005:

The new file "Source/include/FreeRTOS.h" has the line:

#include "ProjDefs.h"

The file being included is actually called "projdefs.h" - note that there are no capitals.  Under Win32 this is no problem, under linux it is a problem.

I will add a note under the known issues list for V3.0.0 to rename "ProjDefs.h" to "projdefs.h".

Thanks for pointing this out.