The first error is pretty clear...

The tutorial talks about this. You need to install the python development
files. Or if you already have them point the build to them.

Perhaps you should consider wiping your environment and starting fresh?

Chad
---

If you have all of the needed files, but are still getting errors such as
"undefined reference" or "Python.h: No such file or directory", then you
have the next problem: they're on your filesystem, but TOSSIM can't find
them.
You have Python support installed, but the make system can't find it

You've found libpython and Python.h, but when TOSSIM compiles it says that
it can't find one or both of them. If it can't find Python.h then
compilation will fail pretty early, as g++ won't be able to compile the
Python glue code. If it can't find the python library, then compilation will
fail at linking, and you'll see errors along the lines of "undefined
reference to __Py...". You need to point the make system at the right place.

Open up support/make/sim.extra. If the make system can't find Python.h, then
chances are it isn't in one of the standard places (e.g., /usr/include). You
need to tell the make system to look in the directory where Python.h is with
a -I option. At the top of sim.extra, under the PFLAGS entry, add

CFLAGS += -I/path
        
where /path is the path of the directory where Python.h lives. For example,
if it is in /opt/python/include, then add CFLAGS += -I/opt/python/include.

If the make system can't find the python library for linking (causing
"undefined reference") error messages, then you need to make sure the make
system can find it. The sim.extra file uses two variables to find the
library: PYDIR and PYTHON_VERSION. It looks for a file named
libpython$(PYTHON_VERSION).so. So if you have Python 2.4 installed, make
sure that PYTHON_VERSION is 2.4 (be sure to use no spaces!) and if 2.3, make
sure it is 2.3.

Usually the Python library is found in /usr/lib. If it isn't there, then you
will need to modify the PLATFORM_LIB_FLAGS variable. The -L flag tells gcc
in what directories to look for libraries. So if libpython2.4.so is in
/opt/python/lib, then add -L/opt/python/lib to the PLATFORM_LIB_FLAGS. Note
that there are three different versions of this variable, depending on what
OS you're using. Be sure to modify the correct one (or be paranoid and
modify all three).

*Symptom:* You've verified that you have the needed Python files and
libraries, but compilation is still saying that it can't link to them
("undefined reference") or can't find them ("cannot find -lpython2.4").

*Solution:* Change the sim.extra file to point to the correct directories
using -L and -I flags.
You have Python support installed, but it turns out to be incompatible with
TOSSIM.

*Symptom:* You get a "This python version requires to use swig with the
-classic option" error message.

*Solution:* Install SWIG and regenerate Python support with the
sing-generate script in tos/lib/tossim, or install a different version of
Python.


On 3/1/07, fatima cabot <[EMAIL PROTECTED]> wrote:

Hi. I've followed every step in tutorial (but the little adjustments to
make it work) and i keep on getting this error when doing make micaz sim
inside any application directory

Any ideas?

Thanks in advance

_______________________________________________
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help




--
Chad @ Home
_______________________________________________
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to