[Tinyos-help] TinyOS and Matlab
Milton Aguiar
miltonaguiar at netmadeira.com
Wed Nov 29 15:52:43 PST 2006
After doing what you have said, the following error occurs:
1000ton at aguiar-8e616724 /opt/tinyos-1.x/tools/java/net/tinyos/matlab
$ javac MatlabClock.java
Note: MatlabClock.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
What's the problem now?
Thanks
Milton Aguiar
Michael Schippling escreveu:
> You probably don't have your CLASSPATH set right yet/still...
> The errors you show are due to not being able to find the TOS tools
> packages.
> Try this:
>
> export
> CLASSPATH=".;C:/tinyos/cygwin/opt/tinyos-1.x/tools/java;[matlab]"
> cd C:/tinyos/cygwin/opt/tinyos-1.x/tools/java/net/tinyos/matlab
> javac MatlabClock.java [...etc]
>
> where [matlab] is the path and name to the Matlab jar file that contains
> "com.mathworks.jmi.*".
>
> You might say, I'm in that directory already, but java doesn't have a
> default search path for classes, other than the contents of .../jre/lib.
> It's also a good idea to include the current dir "." in your CLASSPATH,
> otherwise java will refuse to see files right in front of it's nose...
>
> Again I just advised someone to: google CLASSPATH and read up a bit.
> It's analogous to LD_LIBRARY_PATH, but needs to be set at compile time
> too.
>
> MS
>
> Milton Aguiar wrote:
>>
>> Hi all:
>>
>> Now when i try to compile the TinyOS Matlab tools in
>> C:\tinyos\cygwin\opt\tinyos-1.x\tools\java\net\tinyos\matlab the
>> following errors occurs:
>>
>> $ make matlab
>> javac MatlabClock.java MatlabControl.java MatlabMessageListener.java
>> MatlabMess
>> nger.java;
>> MatlabMessageListener.java:35: package net.tinyos.util does not exist
>> import net.tinyos.util.*;
>> ^
>> MatlabMessageListener.java:36: package net.tinyos.message does not exist
>> import net.tinyos.message.*;
>> ^
>> MatlabMessageListener.java:41: cannot resolve symbol
>> symbol : class MessageListener
>> location: class net.tinyos.matlab.MatlabMessageListener
>> public class MatlabMessageListener implements MessageListener
>> ^
>> MatlabMessageListener.java:59: cannot resolve symbol
>> symbol : class Message
>> location: class net.tinyos.matlab.MatlabMessageListener
>> public void messageReceived(int to, Message m){
>> ^
>> MatlabMessenger.java:35: package net.tinyos.util does not exist
>> import net.tinyos.util.*;
>> ^
>> MatlabMessenger.java:36: package net.tinyos.message does not exist
>> import net.tinyos.message.*;
>> ^
>> MatlabMessenger.java:37: package net.tinyos.message does not exist
>> import net.tinyos.message.*;
>> ^
>> MatlabMessenger.java:42: cannot resolve symbol
>> symbol : class Messenger
>> location: class net.tinyos.matlab.MatlabMessenger
>> public class MatlabMessenger implements Messenger
>> ^
>> Note: MatlabClock.java uses or overrides a deprecated API.
>> Note: Recompile with -deprecation for details.
>> 8 errors
>> make: *** [matlab] Error 1
>>
>>
>> I just want to connect the Matlab to TinyOS. I'm using Matlab R2006a
>> in a Windows XP Professional platform. Please give me a help. I'm
>> desesperated!
>>
>> Thanks in advance
>>
>> Milton Aguiar
>>
>>
>> P.S: When i add a new environment variable i put the value that is
>> the path to the directory that we want to pt in the classpath
>> environment. But in the variable name what i must put??
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> Michael Schippling escreveu:
>>> Well, you have two things confused to start with.
>>>
>>> Your original problem was "javac: not found",
>>> which means that the execution PATH in your shell
>>> (I assume cygwin's bash) is not correct. javac wasn't
>>> found to be executed.
>>>
>>> Once the dust clears, you then want to set the CLASSPATH for matlab
>>> to include the results of the make that hitherto has failed to exec.
>>>
>>> Fortunately there are two reasonably easy ways to proceed and they
>>> should work for both issues. If you are on MSWidows you can go to
>>> MyComputer-Properties-Advanced-EnvironmentVariables (on XP, I think
>>> it a bit different on NT/W2k). There you should find "Path" in System
>>> Variables. Just add the directory that contains your java install bin,
>>> e.g.: c:\JAVA\j2sdk1.4.2_04\bin (put it BEFORE system32 or you will
>>> get MSbill's version of java by mistake). Also note the delimiter used,
>>> I think it's semi-colon ";" here...
>>>
>>> You can set a system CLASSPATH here too. There may already be one to
>>> edit, or create a new one and put all the paths that matlab wants, with
>>> ummmmm....semi-colon....errr....delimiters (I can never remember
>>> which).
>>>
>>> You can also do this for only the bash shell (assuming that you start
>>> matlab from a shell prompt). Edit a new batch file and put something
>>> like:
>>>
>>> export PATH="/cygdrive/c/JAVA/j2sdk1.4.2_04/bin:$PATH"
>>> export
>>> CLASSPATH="C:/tinyos/cygwin/opt/tinyos-1.x/tools/java;$CLASSPATH"
>>>
>>> and whatever other entries you need...note that the separator for PATH
>>> here is colon ':', just to keep us on our virtual toes. Once you write
>>> the file, source it into the shell with: source [filename]
>>> this reads it into your shell environment.
>>>
>>> Then you should be able to do:
>>>
>>> vincent:~ [257] type java
>>> java is /cygdrive/c/JAVA/j2sdk1.4.2_04/bin/java
>>>
>>> There also seems to be a "matlab classpath.txt file" someplace if you
>>> follow Stephen Chou concurrent problems on this list...
>>>
>>> As I said, see the man page for bash and also basic java install and
>>> classpath instructions & doc to get a better understanding of setting
>>> these things. Try google CLASSPATH for instance.
>>>
>>> Someday this will all be done by computer.
>>> MS
>>>
>>> Milton Aguiar wrote:
>>>> I don't know how to edit the system classpath evironment. I must do
>>>> the following:
>>>>
>>>> " It is important to compile the java files present in
>>>> 'C:\tinyos\cygwin\opt\tinyos-1.x\tools\java\net\tinyos\matlab'
>>>> folder. We added the *'C:\MATLAB7\java\jar\jmi.jar'* to the system
>>>> class-path to compile. One should not forget to add
>>>> 'c:\tinyos\cygwin\opt\tinyos- 1.x\tools\java\comm.jar' and
>>>> 'c:\tinyos\cygwin\opt\tinyos-1.x\tools\java' to the system
>>>> class-path to compile. This will compile java files that are needed
>>>> to control Matlab through java "
>>>>
>>>> How can i edit the system classpath ??
>>>>
>>>> Thanks
>>>>
>>>> Milton Aguiar
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Michael Schippling escreveu:
>>>>> Is the java install /bin directory in your PATH environment variable?
>>>>> try: type javac or: type java
>>>>> from the cygwin bash shell.
>>>>> See: man bash for an excruciatingly long explanation...
>>>>> MS
>>>>>
>>>>>
>>>>> Milton Aguiar wrote:
>>>>>> Hi all:
>>>>>>
>>>>>> When i try to compile the TinyOS Matlab tools an error occurs:
>>>>>>
>>>>>>
>>>>>>
>>>>>> $ make matlab
>>>>>> javac MatlabClock.java MatlabControl.java
>>>>>> MatlabMessageListener.java MatlabMesse
>>>>>> nger.java;
>>>>>> javac: not found
>>>>>> make: *** [matlab] Error 127
>>>>>>
>>>>>>
>>>>>> Can someone help me??
>>>>>>
>>>>>> Thanks in advance
>>>>>>
>>>>>>
>>>>>> Milton Aguiar
>>>>>>
>>>>>> _______________________________________________
>>>>>> Tinyos-help mailing list
>>>>>> Tinyos-help at Millennium.Berkeley.EDU
>>>>>> https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>
>
>
More information about the Tinyos-help
mailing list