I'm sorry, but there's been too much water under the bridge for me...

What I was trying to say, and it seems to be somewhat true, is that
you need a symbol named "_start" that tells the link/loader where to put
the very first executable instruction in 'physical' memory. I believe
there was an invisible .o that did this for UNIX compiles back in the day,
and I forget what it's name was...but it was automagically included
in every compile. If this is not covered in the TOS "porting"
"documentation" then you may need to do some code archaeology on
existing platforms, down to the .asm level. The ELF linker doc may
have something to say about it too.

MS

mejda chouaieb wrote:
I didn't really understand if this warning comes from TinyOS or from the 
Toolchain !
II'm porting TinyOS to Jennic JN5139R1 microcontroller and i'm compiling for my 
new platform called iSense which is based on the JN5139R1 microcontroller, it 
seams to compile the Null application but I still have this warning that is 
very important. I wrote the functions that starts Jennic.
as follows:
-------------------------------------------------------------------------------------------
PUBLIC void  AppColdStart() {
HAL_GDB_INIT();
HAL_BREAKPOINT();
    /* Register peripheral callbacks */
u32AppApiInit( NULL, NULL, NULL, NULL, NULL, NULL);
u32AHI_Init();
}
PUBLIC void  AppWarmStart() {
AppColdStart();
}
------------------------------------------------------------------------------------------
every thing is related to this Makefile line :
_________________________________________________________________________________________________________________
  $(NCC) -o $(MAIN_EXE) $(OPTFLAGS) $(PFLAGS) $(CFLAGS) $(WIRING_CHECK_FLAGS) 
$(COMPONENT).nc $(LIBS) $(LDFLAGS)
_________________________________________________________________________________________________________________
when I compile the Null application I have :
[EMAIL PROTECTED] /cygdrive/c/jennic/cygwin/opt/tinyos-2.x/apps/Null
$ make isense
mkdir -p build/isense
    compiling NullAppC to a isense binary
ncc -o build/isense/main.exe -Os -Wall -Wshadow -DDEF_TOS_AM_GROUP=0x7d -Wnesc-a
ll -target=isense -fnesc-cfile=build/isense/app.c -board= -DIDENT_PROGRAM_NAME=\
"NullAppC\" -DIDENT_USER_ID=\"Mejda\" -DIDENT_HOSTNAME=\"MEJDA\" -DIDENT_USER_HA
SH=0x9dac3aceL -DIDENT_UNIX_TIME=0x476341cfL -DIDENT_UID_HASH=0x8c7e27ebL -I. -D
OR1K -g -Os -Wall -fomit-frame-pointer -msibcall -mno-entri -mno-multi -mno-setc
c -mno-cmov -mno-carry -mno-subb -mno-sext -mno-ror -mno-ff1 -mno-hard-div -mhar
d-mul -mbranch-cost=3 -msimple-mul -mabi=1 -march=ba1 -mredzone-size=4 -DPCB_DEV
KIT2 -DEMBEDDED -DLEAN_N_MEAN -DSINGLE_CONTEXT -DCHIP_RELEASE_5131 -Iinclude -I/
opt/tinyos-2.x/tos/chips/JN5139R1/Platform/DK2/Include -I./Source -I/opt/tinyos-
2.x/tos/chips/JN5139R1/Common/Include -I/opt/tinyos-2.x/tos/chips/JN5139R1/Chip/
JN513xR1/Include -I -I/opt/tinyos-2.x/tos/chips/JN5139R1/Chip/Common/Include  Nu
llAppC.nc -lm
/ba-elf/bin/../lib/gcc/ba-elf/4.1.2/../../../../ba-elf/bin/ld: warning: cannot f
ind entry symbol _start; defaulting to 00000000
    compiled NullAppC to build/isense/main.exe
             360 bytes in ROM
               4 bytes in RAM
ba-elf-objcopy --output-target=ihex build/isense/main.exe build/isense/main.ihex
    writing TOS image
[EMAIL PROTECTED] /cygdrive/c/jennic/cygwin/opt/tinyos-2.x/apps/Null
$
___________________________________________________________________________________
I'm really confused and I couldn't fix this warning since 2 weeks, so if some 
one has an idea or if someone can explain to me what happen when this makefile 
line is used it will be great. because when I commit it out I have no more this 
warning as follows:
_____________________________________________________________________________________
$ make isense
mkdir -p build/isense
    compiling NullAppC to a isense binary
#ncc -o build/isense/main.exe -Os -Wall -Wshadow -DDEF_TOS_AM_GROUP=0x7d -Wnesc-
all -target=isense -fnesc-cfile=build/isense/app.c -board= -DIDENT_PROGRAM_NAME=
\"NullAppC\" -DIDENT_USER_ID=\"Mejda\" -DIDENT_HOSTNAME=\"MEJDA\" -DIDENT_USER_H
ASH=0x9dac3aceL -DIDENT_UNIX_TIME=0x476344dfL -DIDENT_UID_HASH=0xaad354f0L -I. -
DOR1K -g -Os -Wall -fomit-frame-pointer -msibcall -mno-entri -mno-multi -mno-set
cc -mno-cmov -mno-carry -mno-subb -mno-sext -mno-ror -mno-ff1 -mno-hard-div -mha
rd-mul -mbranch-cost=3 -msimple-mul -mabi=1 -march=ba1 -mredzone-size=4 -DPCB_DE
VKIT2 -DEMBEDDED -DLEAN_N_MEAN -DSINGLE_CONTEXT -DCHIP_RELEASE_5131 -Iinclude -I
/opt/tinyos-2.x/tos/chips/JN5139R1/Platform/DK2/Include -I./Source -I/opt/tinyos
-2.x/tos/chips/JN5139R1/Common/Include -I/opt/tinyos-2.x/tos/chips/JN5139R1/Chip
/JN513xR1/Include -I -I/opt/tinyos-2.x/tos/chips/JN5139R1/Chip/Common/Include  N
ullAppC.nc -lm
    compiled NullAppC to build/isense/main.exe
             360 bytes in ROM
               4 bytes in RAM
ba-elf-objcopy --output-target=ihex build/isense/main.exe build/isense/main.ihex
    writing TOS image
_____________________________________________________________________________________

Thanks
----- Message d'origine ----
De : Michael Schippling <[EMAIL PROTECTED]>
À : mejda chouaieb <[EMAIL PROTECTED]>
Cc : [email protected]
Envoyé le : Vendredi, 14 Décembre 2007, 18h48mn 09s
Objet : Re: Tr : Re : [Tinyos-help] linking problems

My guess would be that there is a 'hidden' main() component
that sets the entry address "_start". The tos/system/RealMain.nc
might have something to do with this, but probably something needs
to be defined into the compiler or assembler to tie it all together...

Of course, if your controller's entry address IS 0x0000,
it's might JustWork(TM) as is.

MS

mejda chouaieb wrote:
Hello,
i´m trying to compile the Null application, I type ´make isense´
 when I compile because my new platform is called isense
yes when I commit out this line the program is not compiled. what do
 you mean by a problem with the software setup?
I didn´t try to compile Blink right now, I want first to compile the
 Null application for that platform.
Thanks



----- Message d'origine ----
De : Urs Hunkeler <[EMAIL PROTECTED]>
À : mejda chouaieb <[EMAIL PROTECTED]>
Cc : [email protected]
Envoyé le : Vendredi, 14 Décembre 2007, 9h58mn 07s
Objet : Re: [Tinyos-help] linking problems

Hi,

You probably won't get any errors anymore because the program is not
being compiled. I would guess that this line is the single most
important line in the whole Makefile :-)

I don't know the detailed meaning of this line, but the $(LDFLAGS) is
usually the set of flags specific for linking.

Your warning seems to indicate a problem with your software setup. What
is the exact command you use to compile? What application are you
 trying
to compile? Do you manage to compile the Null application for the
desired platform? If so, what about Blink?

Cheers,
Urs


mejda chouaieb schrieb:
Hello All,
can someone please expalin to me the meaning of this line and if
 something for linking is present here :
$(NCC) -o $(MAIN_EXE) $(OPTFLAGS) $(PFLAGS) $(CFLAGS)
 $(WIRING_CHECK_FLAGS) $(COMPONENT).nc $(LIBS) $(LDFLAGS)
because when i copile for my new platform I have a linking error from
 the toolchain:
/ba-elf/bin/../lib/gcc/ba-elf/4.1.2/../../../../ba-elf/bin/ld:
 warning: cannot find entry symbol _start; defaulting to 00000000
and when I put # in front of this line this warning disappears !!!
Thanks for help





____________________________________________________________________________________________
Yahoo! Mail innove : interface hyper pratique, messenger intégré,
 couleurs - http://mail.yahoo.fr





_____________________________________________________________________________ Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers Yahoo! Mail http://mail.yahoo.fr

_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


--
Platform: WinXP/Cygwin
TinyOS version: 1.x, Boomerang
Programmer: MIB510
Device(s): Mica2, MicaZ, Tmote
Sensor board: homebrew

_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to