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