Folks, I'm having some troubles with the coexistence of TinyOS 2.0 and Boomerang, running inside the same Cygwin installation.
One could also consider this as a not finished tutorial how to run both versions nicely side by side :-) What I did: - I installed Boomerang 2.0.4 - As we are using both MicaZ and soon tmote sky in our lab, I installed the Atmel AVR Tools using the rpms on the TinyOS 2.0 installation site. At this point, I had a installation that nicely compiled TinyOS 1.X applications (examples an my own ones) on both MicaZ and tmote platforms. As I want to use TinyOS 2.0 for a bigger project, I decided to install it within the existing installation using tinyos-2.0.0-2.cygwin.noarch.rpm, again from the TinyOS 2.0 site. I did not upgrade the tinyos-tools and nesc, as to my knowledge booerang already uses versions that are up to date. Following this step, I dumped my environment variables using "SET > tinyos1x.sh", replacing "declare -x" with "export". This provides me a script and I can use the command "source tinyos1x.sh" to adjust cygwin to perfectly run Boomerang if environment variables are changed. In the next step, I tried to get TinyOS 2.0 running. Therefore I created a simple bash script tinyos2.sh: >export TOSROOT="/opt/tinyos-2.x" >export TOSDIR="$TOSROOT/tos" >export CLASSPATH=`cygpath -w $TOSROOT/support/sdk/java/tinyos.jar` >export CLASSPATH="$CLASSPATH;.;C:\\Programme\\Java\\jre1.5.0_06\\lib\\ext\\" >export MAKERULES="$TOSROOT/support/make/Makerules" >export >PATH="/cygdrive/c/Programme/Java/jdk1.5.0_06/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/PROGRA~1/ATT/Graphviz/bin:/opt/msp430/bin" Executing "source tinyos2.sh" from bash should provide me with a running TinyOS 2.0 installation, and actually it does. Example applications compile nicely for micaZ and telosb, but not for tmote! Executing "make tmote" in apps/Blink gives me a very strange result: >mkdir -p build/tmote compiling BlinkAppC to a tmote binary ncc -o >build/tmote/main.exe -Os -O -Wall -Wshadow -DDEF_TOS_AM_GROUP=0x7d >-Wnesc-all -target=tmote -fnesc-cfile=build/tmote/app.c -board= >-mdisable-hwmul -Wall -Wshadow -DDEF_TOS_AM_GROUP=0x7d -Wnesc-all >-target=tmote -fnesc-cfile=build/tmote/app.c -board= >-I/opt/moteiv/tos/platform/tmote >-I/opt/moteiv/tos/platform/tmote/util/uartdetect >-I/opt/moteiv/tos/platform/msp430/adc >-I/opt/moteiv/tos/platform/msp430/dac >-I/opt/moteiv/tos/platform/msp430/dma >-I/opt/moteiv/tos/platform/msp430/resource >-I/opt/moteiv/tos/platform/msp430/timer >-I/opt/moteiv/tos/platform/msp430 -I/opt/moteiv/tos/lib/util/pool >-I/opt/moteiv/tos/lib/util/button -I/opt/moteiv/tos/lib/util/null >-I/opt/moteiv/tos/lib/util -I/opt/moteiv/tos/lib/MultiHopLQI >-I/opt/moteiv/tos/lib/netsync -I/opt/moteiv/tos/lib/sp >-I/opt/moteiv/tos/lib/sp/cc2420 -I/opt/moteiv/tos/lib/timer >-I/opt/moteiv/tos/lib/resource -I/opt/moteiv/tos/lib/sched >-I/opt/moteiv/tos/lib/Deluge -I/opt/moteiv/tos/lib/Flash/STM25P >-I/opt/moteiv/tos/lib/Flash -I/opt/moteiv/tos/lib/Spram >-I/opt/moteiv/tos/interfaces -I/opt/moteiv/tos/lib/CC2420Radio >-I/opt/moteiv/tos/system -I/opt/moteiv/tinyos-1.x/tos/lib/CC2420Radio >-I/opt/moteiv/tinyos-1.x/tos/lib/Drip >-fnesc-scheduler=TinySchedulerC,TinySchedulerC.TaskBasic,TaskBasic,TaskBasic,runTask,postTask >-Wl,--section-start=.text=0x4800,--defsym=_reset_vector__=0x4000 >-DLIB_DELUGE -DDELUGE_NUM_IMAGES=6 -mdisable-hwmul BlinkAppC.nc -lm >target `exe' >/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:79: warning: ignoring old co >mands for target `exe' >/opt/tinyos-2.x/support/make/msp/msp.rules:84: warning: overriding commands for >target `exe0' >/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:82: warning: ignoring old co >mands for target `exe0' >/opt/tinyos-2.x/support/make/msp/msp.rules:92: warning: overriding commands for >target `builddir' >/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:87: warning: ignoring old >comands for target `builddir' >/opt/tinyos-2.x/support/make/msp/msp.rules:95: warning: overriding commands for target `bytes' >/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:90: warning: ignoring old co mands for target `bytes' >/opt/tinyos-2.x/support/make/tmote.target:17: warning: overriding commands for >target `tmote' >/opt/moteiv/tools/make/tmote.target:91: warning: ignoring old commands for >targt `tmote' >multiple targets specified >make: *** [exe0] Error 2 Obviously, the make process mixes up source files from boomerangs' tinyos 1.x and 2.x - which clearly does not work... My final question: Do I simply have to clear out an environment variable to get this running? Or should I change the makerules of tinyos 2.0 ? (If I switch back to tinyos 1.x using my bash script mentioned above, everything works fine) Regards, Elias Weingärtner Institute of Computer Science Ulm University, Germany _______________________________________________ Tinyos-help mailing list [email protected] https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
