Hi I am cross compiling with arm-none-eabi as the target, because support for xscale-elf is being phased out on the newer versions of gcc .
I finally managed to get a glimpse of why I get the Assembler error. Essentially, I am able to compile and build the default apps (Blink, RadioCountToLeds) etc in the tinyos2.x- folders. It works as expected. I run into problems when I try to use the tinyos-2.x-contrib files. I tried to build the simple Blink app in the contrib folder. And I got the same error as before. /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s: Assembler messages: /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s:268: Error: symbol .tosstart is in a different section If I comment out the following line in the /tinyos-2.x-contrib/intelmote2/apps/Makerules folder , the app compiles perfectly without errors. TOSMAKE_PATH += $(INTELMOTE2_CONTRIB_DIR)/support/make I have rechecked my bash variables and am not setting the TOSMAKE_PATH variable anywhere. Also, the only reference I could find to what .tostart does is https://www.millennium.berkeley.edu/pipermail/tinyos-2-contrib-commits/2009-February/002697.html where they mention that the reset handler is placed in TOSSTART section. So I am guessing there is a problem in finding the reset handler ? However, if I try to compile any other application in the contrib folder such as the cameraTestJpegSerial , with the above line commented out in the Makerules file, I run into memory errors. /usr/lib/gcc/arm-none-eabi/4.3.5/../../../../arm-none-eabi/bin/ld: build/intelmote2/main.exe section `.sdram' will not fit in region `data' /usr/lib/gcc/arm-none-eabi/4.3.5/../../../../arm-none-eabi/bin/ld: region `data' overflowed by -251464 bytes I guess, I cannot get rid of the TOSMAKE_PATH variable. I would highly appreciate any inputs. Thanks Bharath On Tue, May 28, 2013 at 1:43 PM, Eric Decker <[email protected]> wrote: > > > > On Tue, May 28, 2013 at 10:34 AM, Bharath Kumar <[email protected]>wrote: > >> Hi >> >> I am on a Ubuntu 10.04 system. I have installed the following versions of >> the utilities for cross-compiling. binutils 2.23.1 , gcc-4.3.5 and newlib >> 1.19.0 . And my environment variables are set properly. I am able to >> compile for a micaz platform and emulate it on Avrora without any issues. >> > > The above doesn't tell me which cross-compiling tools you are using. > That looks like the native tools. > > the intelmote2 (imote2) uses xscale-elf-gcc while the micaz uses avr-gcc. > > >> >> I am having trouble with the imote2 platform. To the best of my >> knowledge, I have followed the instructions on >> http://docs.tinyos.net/tinywiki/index.php/IMote2_Compiler#Verification_2 >> correctly. >> > > That page is dated. I don't know what the current methods are as I don't > use ancient motes. I'm using reasonably modern msp430 based motes off a > private tinyos development tree. > > >> >> I am unable to understand what "Error: symbol .tosstart is in a different >> section" means. >> > > The linker isn't happy about something. But I can't help you much more > than that. > > I would look to see what actual toolchain you have installed and see if > you can replicate exactly what is suggested in the docs page. > > >> Any inputs would be highly appreciated/ >> >> Thanks >> Bharath >> >> >> >> >> >> >> >> On Tue, May 28, 2013 at 1:19 PM, Eric Decker <[email protected]> wrote: >> >>> >>> you need to provide more information. >>> >>> what system are you hosting on (looks like a LINUX flavor) >>> >>> Where did you get your toolchains from? >>> >>> What version of the toolchain do you have installed? >>> >>> Do you have your environment variables set properly? See Section 4 of >>> 00b_Development_Environment<https://github.com/tp-freeforall/prod/blob/tp-master/00b_Development_Environment> >>> >>> >>> >>> The lines I've highlighted below look particularily suspicious. >>> >>> If you do "make verbose intelmote2" it might give you more insight. >>> >>> >>> >>> >>> On Tue, May 28, 2013 at 9:04 AM, Bharath Kumar <[email protected]>wrote: >>> >>>> Hi >>>> >>>> I am trying to set up an imote2 toolchain on a 64 bit computer. I have >>>> installed all the necessary utilities. I run into the following error when >>>> I try to compile the simple Blink app. >>>> >>>> */home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s: >>>> Assembler messages: >>>> /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s:268: >>>> Error: symbol .tosstart is in a different section >>>> make: *** [exe0] Error 1* >>>> >>>> I have pasted the whole terminal output below, just in case. I was >>>> unable to find any other references online to this problem. I would >>>> appreciate it if someone could help me out. >>>> >>>> bharath@chad-desktop:~/TinyOS/intelmote2/apps$ cd Blink/ >>>> bharath@chad-desktop:~/TinyOS/intelmote2/apps/Blink$ make intelmote2 >>>> */home/bharath/TinyOS/intelmote2//support/make/intelmote2.extra:41: >>>> warning: overriding commands for target `bytes' >>>> /home/bharath/TinyOS/tinyos-2.x//support/make/pxa27x/pxa27x.rules:104: >>>> warning: ignoring old commands for target `bytes' >>>> /home/bharath/TinyOS/intelmote2//support/make/intelmote2.extra:41: >>>> warning: overriding commands for target `bytes' >>>> /home/bharath/TinyOS/intelmote2//support/make/intelmote2.extra:41: >>>> warning: ignoring old commands for target `bytes'* >>>> mkdir -p build/intelmote2 >>>> echo -mcpu=iwmmxt -mfpu=softfpa -defsym BOOTLOADER=1 >>>> /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s >>>> /home/bharath/TinyOS/intelmote2//tos/chips/pxa27x/pxa27x_util.s >>>> /home/bharath/TinyOS/intelmote2//tos/chips/pxa27x/mmu_table.s -o >>>> build/intelmote2/asms.o >>>> -mcpu=iwmmxt -mfpu=softfpa -defsym BOOTLOADER=1 >>>> /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s >>>> /home/bharath/TinyOS/intelmote2//tos/chips/pxa27x/pxa27x_util.s >>>> /home/bharath/TinyOS/intelmote2//tos/chips/pxa27x/mmu_table.s -o >>>> build/intelmote2/asms.o >>>> compiling BlinkAppC to a intelmote2 binary >>>> ncc -o build/intelmote2/main.exe -Os >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/chips/da9030 >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2 >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/pxa27x >>>> -I/home/bharath/TinyOS/intelmote2//tos/sensorboards/im2cb >>>> -I/home/bharath/TinyOS/intelmote2//tos/sensorboards/xbow_cb >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/chips/da9030 >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2 >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/pxa27x >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/ov7649 >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/ov7670 >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/chips/da9030 >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2 >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/pxa27x >>>> -I/home/bharath/TinyOS/intelmote2//tos/sensorboards/im2cb >>>> -I/home/bharath/TinyOS/intelmote2//tos/sensorboards/xbow_cb >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/chips/da9030 >>>> -I/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2 >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/pxa27x >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/ov7649 >>>> -I/home/bharath/TinyOS/intelmote2//tos/chips/ov7670 -Wall -Wshadow >>>> -Wnesc-all -target=intelmote2 -fnesc-cfile=build/intelmote2/app.c -board= >>>> -mcpu=xscale -DDEFINED_TOS_AM_GROUP=0x22 -DBOOTLOADER -DBOOTLOADER >>>> -T/home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/tos.x >>>> -DSYSTEM_CORE_FREQUENCY=13 -DSYSTEM_BUS_FREQUENCY=13 BlinkAppC.nc -lm >>>> /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s >>>> /home/bharath/TinyOS/intelmote2//tos/chips/pxa27x/pxa27x_util.s >>>> /home/bharath/TinyOS/intelmote2//tos/chips/pxa27x/mmu_table.s >>>> /home/bharath/TinyOS/tinyos-2.x//tos/chips/pxa27x/HplPXA27xInterruptM.nc: >>>> In function ‘HplPXA27xInterruptM$allocate’: >>>> /home/bharath/TinyOS/tinyos-2.x//tos/chips/pxa27x/HplPXA27xInterruptM.nc:96:12: >>>> warning: variable ‘tmp’ set but not used [-Wunused-but-set-variable] >>>> uint32_t tmp; >>>> ^ >>>> /home/bharath/TinyOS/tinyos-2.x//tos/chips/pxa27x/HplPXA27xInterruptM.nc: >>>> In function ‘HplPXA27xInterruptM$enable’: >>>> /home/bharath/TinyOS/tinyos-2.x//tos/chips/pxa27x/HplPXA27xInterruptM.nc:164:12: >>>> warning: variable ‘tmp’ set but not used [-Wunused-but-set-variable] >>>> uint32_t tmp; >>>> ^ >>>> /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s: >>>> Assembler messages: >>>> /home/bharath/TinyOS/intelmote2//tos/platforms/intelmote2/toscrt0.s:268: >>>> Error: symbol .tosstart is in a different section >>>> make: *** [exe0] Error 1 >>>> >>>> >>>> Thanks >>>> Bharath >>>> >>>> _______________________________________________ >>>> Tinyos-help mailing list >>>> [email protected] >>>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >>>> >>> >>> >>> >>> -- >>> Eric B. Decker >>> Senior (over 50 :-) Researcher >>> >>> >> > > > -- > Eric B. Decker > Senior (over 50 :-) Researcher > >
_______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
