X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=doc%2Fhtml%2Fupgrade-tinyos.html;h=116c85a860ef659a641c37ee51a17f101f5a7369;hb=9aa24d53100071ed9e1ff3b47e9f73e12082c5cb;hp=26daa8c09d0ffbf8e6fdbf35b227e3189493c494;hpb=5b7a008e9e8076ce69fcaf063c006e1bf681e47c;p=tinyos-2.x.git diff --git a/doc/html/upgrade-tinyos.html b/doc/html/upgrade-tinyos.html index 26daa8c0..116c85a8 100644 --- a/doc/html/upgrade-tinyos.html +++ b/doc/html/upgrade-tinyos.html @@ -1,20 +1,15 @@ -
+-
Upgrading from TinyOS 1.x to TinyOS 2.x | -
This document describes how to upgrade your TinyOS 1.x environment to a TinyOS 2.x environment. This requires that you not only install the TinyOS 2.x rpm, but also that you upgrade your tools from the toolset @@ -37,9 +32,7 @@ There are 3 steps to upgrading from 1.x to 2.x:
rpm -Uvh
.
If you using the Cygwin version recommended
in these install
instructions, you should install the "Recommended" Windows/Cygwin
-nesC RPM. If you t
-to a Cygwin version incompatibility: try the "Other" Windows/Cygwin
-RPM (1.2.7b). Try installing it and it does not work (e.g., you
-get strange errors when you try to execute it), this may be due
+nesC RPM.
+If you
+get strange errors when you try to compile TinyOS programs,
+such as the error message "the procedure entry point basename could not be located
+in the dynamic link library cygwin1.dll", this is likely due
to a Cygwin version incompatibility: try the "Other" Windows/Cygwin
-RPM (1.2.7a).
+RPM. If you are using Cygwin and installing the nesC RPM
+causes an error that the RPM was built for Cygwin, add the --ignoreos
+option.
+
+
@@ -186,24 +184,31 @@ RPM (1.2.7a).
rpm -Uvh
rpm -Uvh
rpm -Uvh --ignoreos
(if Cygwin complains)rpm -ivh --force
(1.x tree)rpm -Uvh
(no 1.x tree)rpm -ivh --force
(1.x tree)rpm -Uvh
(no 1.x tree)-To preserve your old tinyos-1.x tree, we strongly recommend that you use + +
If you have an existing 1.x tree, we strongly recommend that you use
the install (-i
) rpm argument when installing the tinyos-2.x rpm rather
than the upgrade (-U
) argument. The difference is that the -U
will
first remove the tinyos-1.x tree while -i
will not remove previously installed
-files. Said another way, we recommend using rpm -ivh
.
+files. Said another way, we recommend using rpm -ivh
.
If you have an existing 2.x tree which you want to keep unchanged, then +you will need to move it to make space for the new one. For example, if you +have an existing tree in /opt/tinyos-2.x/, then you can move it +to /opt/tinyos-2.x-old. Once you have moved it, we recommend +performing a forced installation of the 2.0 tree.
+ +If you have an existing 2.x tree which you do not care about, then we +recommend removing it before installing the new one with a forced install.
TinyOS 2.x
Windows/Cygwin | Linux | +Command | |||
TinyOS | -tinyos-2.0.0beta2-3.cygwin.noarch.rpm | -tinyos-2.0.0beta2-3.noarch.rpm | +tinyos-2.0.2-2.cygwin.noarch.rpm | +tinyos-2.0.2-2.noarch.rpm | +rpm -Uvh (to upgrade) + rpm -ivh (to install) + rpm -ivh --force (to force install) + |
chmod 666 /dev/<devicename>
groups:
Finally, if you have installed TinyOS 2.0.1, there is a bug in TOSSIM (which will be fixed in 2.0.2). +The bug is in file tos/chips/atm128/sim/atm128_sim.h. Change these lines 22 and 23 from: + +
+#define _SFR_IO8(io_addr) _MMIO_BYTE((io_addr) + 0x20) +#define _SFR_IO16(io_addr) _MMIO_WORD((io_addr) + 0x20) ++ +to + +
+#define _SFR_IO8(io_addr) _MMIO_BYTE((io_addr)) +#define _SFR_IO16(io_addr) _MMIO_WORD((io_addr)) ++ +If you do not do this, then timers will not work correctly.
Switching between the two should require switching only these environment +variables.
+