Part of the TOS install process is to do a make in tools/java,
which I suppose wends it's way down to the Makefile you found.
Unfortunately, the world is what is needed to compile the non-
java parts of the tree, apparently at least.

Like I said, I was just following instructions...the dependencies
are just too deep and inbred for me to follow in most cases. Is
there a reason you can't do a full install someplace?

MS


Neil Hancock wrote:
It would seem that the tools\java\net\tinyos\tools\Makefile
could have the following to generate the messages


TOS_INCLUDE = -I$(TOS)/lib/Flash -I$(TOS)/platform/mica2 -I$(TOS)/system

DelugeAdvMsg.java:
        $(MIG) $(TOS_INCLUDE) -java-classname=$(PACKAGE).DelugeAdvMsg
$(DELUGECMD_LIB)/DelugeMsgs.h DelugeAdvMsg -o $@


However it just keeps including the world, so was wondering if there was
some other secret utility already out there to handle it.

Many thanks
Neil


-----Original Message-----
From: Michael Schippling [mailto:[EMAIL PROTECTED]
Sent: Wednesday, February 08, 2006 4:58 PM
To: Neil Hancock
Cc: [email protected]
Subject: Re: [Tinyos-help] tools\java>make issues

You probably need to run "mig" before doing a javac.
This is a TOS utility for generating message classes
and is discussed a bit in the tutorials. The tools/java
makefile should run the whole thing, but you'll need
(most of) the TOS install to do it. There are unfathomable
layers of make includes that spec the rules. If you don't/can't
install TOS on your target, then maybe you can put it on another
"real" PC, do the make, and copy the results to your
target system. At that point you probably only need
a jar of the tools/java classes anyway.

MS

Neil Hancock wrote:
Hi
I'm looking to try out Deluge on a WinXpProf platform, and having a few
difficulties to get Java to build correctly.

I've tried on two machines and neither has worked completed with the
Java
tools.  The nesC apps/TestDeluge builds ok.

I think it needs a way of generating the "Automatically Generated Class"
files of DelugeAdvMsg.java DelugeConsts etc.
These could be done in java/net/tinyos/tools/Makefile - but there are no
rules specified to make them.

Any insight as to where to look next greatly appreciated.

Neil Hancock


I've upgraded from 1.1.12 to 1.1.15 and it appears that the tool chain
has
changed enough that its not a straight forward upgrade.
Using tools\scripts\toscheck indicates the right Java is referenced
java:
        /cygdrive/c/tinyos/jdk1.4.1_02/j2sdk1.4.1_02/bin/java
        java version "1.4.1_02"

javax.comm:
        javax.comm ok


Here is the problem report:

I'm upgrading from 1.1.12 and
$ rpm --force --ignoreos -Uvh nesc-1.1.2b-1.cygwin.i386.rpm
$ rpm --force --ignoreos -Uvh tinyos-1.1.15Dec2005cvs-
1.cygwin.noarch.rpm
In making the java packages under tinyos/cygwin/opt/tinyos-
1.x/tools/java,
esp. the "net.tinyos.deluge" package. But I found the following compiler
errors for quite a few classes including DelugeCrc.java,
Downloader.java,
Eraser.java, Pinger.java, etc:

cannot find symbol class DelugeAdvMsg
cannot find symbol variable DelugeConsts

There are two auto-generated java files under "net.tinyos.tools package"
named DelugeAdvMsg and DelugeConsts, but they belong to different
packages,
and the method signature and constants definition don't fit the classes
which the "net.tinyos.deluge" package classes ask.

So with these problems with the java build, I renamed directories
tinyos-1.x\tools to tinyos-1.x\tools-old  and refreshed with
$ rpm --force --ignoreos -Uvh tinyos-1.1.15Dec2005cvs-
1.cygwin.noarch.rpm
Which now completes the build OK, but as from
Javac Deluge.java it has problems as cannot  resolve symbols
DelugeAdvMsg
NetProgMsg ...
Comparing the directories 'tools' with 'tools-old' the following files
are
missing between the two environements.
Java\net\tinyos\tools\DelugeAdvMsg.java DeligeConsts.java
DelugeDataMsg.java
DelugeReqMsg.java TestTimeStamping.java
Java\net\tinyos\util DTNStuf



I also found a little inconsistency with the make scripts, on one
machine my
Java  was 1.5 - which toscheck indicated.
However part of the make environment used the PATH to find java, (1.4)
and
another part does something different; java\jini\Makefile uses
tools\scripts\locate-jre which references the Win Registry for
\SOFTWARE\JavaSoft\Java Development Kit\CurrentVersion and was switching
to
1.5.0.2 midway in the build.
So setting the Registry entry  CurrentVersion to 1.4.1_02 made the build
happier.





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



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

Reply via email to