Difference between revisions of "Installing TinyOS-2.x on Mac OS X (Snow Leopard)"

From TinyOS Wiki
Jump to: navigation, search
(Troubleshooting)
Line 14: Line 14:
  
 
* If Java complains about not finding the JNI libraries (getenv, toscomm), try running it using sudo.
 
* If Java complains about not finding the JNI libraries (getenv, toscomm), try running it using sudo.
 +
 +
* If you encounter the error <tt>can't open config file "/etc/avrdude/avrdude.conf"</tt>, either softlink <tt>/opt/local/etc/avrdude.conf</tt> to <tt>/etc/avrdude/avrdude/conf</tt>, or put the following code in the file <tt>$TOSROOT/support/make/avr/avr.rules</tt> after the line <tt>AVRDUDE_CONF ?= /etc/avrdude/avrdude.conf</tt>:
 +
  ifeq ($(findstring Darwin, $(shell uname)), Darwin)
 +
    AVRDUDE_CONF := /opt/local/etc/avrdude.conf
 +
  endif
  
 
* For more troubleshooting, some of the [http://www.mobilab.unina.it/TinyOSMAC.htm tips here written for Tiger] maybe applicable.
 
* For more troubleshooting, some of the [http://www.mobilab.unina.it/TinyOSMAC.htm tips here written for Tiger] maybe applicable.
  
 
[[Category:Installation]]
 
[[Category:Installation]]

Revision as of 19:03, 1 April 2010

  • Install gcc44 from MacPorts and softlink /opt/local/bin/gcc-mp-4.4 to gcc, and /opt/local/bin/g++-mp-4.4 to g++, in the directory /usr/bin.
 Note: gcc43 works too.
 Note: the apple-gcc* compiler does not work because it will complain that "-c" is not a valid option to the preprocessor.
  • Put "CFLAGS+=-D_FORTIFY_SOURCE=0" in your Makefile.
  • For simulations that involve opening a lot of files, e.g. simulations involving Flash memories, in the shell, type "ulimit -n <number>" where <number> is a high-enough value.

Troubleshooting

  • If Java complains about not finding the JNI libraries (getenv, toscomm), try running it using sudo.
  • If you encounter the error can't open config file "/etc/avrdude/avrdude.conf", either softlink /opt/local/etc/avrdude.conf to /etc/avrdude/avrdude/conf, or put the following code in the file $TOSROOT/support/make/avr/avr.rules after the line AVRDUDE_CONF ?= /etc/avrdude/avrdude.conf:
 ifeq ($(findstring Darwin, $(shell uname)), Darwin)
   AVRDUDE_CONF := /opt/local/etc/avrdude.conf
 endif