help: error compiling at atmega16

the code(will show) complied error when i choose Atmega16 Board,but i complied "blink" example that can be workd fine.

whe i used Mega2560 Board the code can be complied.(Atmega8?UNO Board are also work).

the error messge is :

In file included from SHT10AND1602ATMEGA16.cpp:3:
/home/sssss/arduino-1.0.1/libraries/Wire/Wire.h:60: error: conflicting return type specified for ‘virtual size_t TwoWire::write(uint8_t)’
/home/sssss/arduino-1.0.1/hardware/arduino/cores/M2Arduino/Print.h:40: error: overriding ‘virtual void Print::write(uint8_t)’
/home/sssss/arduino-1.0.1/libraries/Wire/Wire.h:61: error: conflicting return type specified for ‘virtual size_t TwoWire::write(const uint8_t*, size_t)’
/home/sssss/arduino-1.0.1/hardware/arduino/cores/M2Arduino/Print.h:42: error: overriding ‘virtual void Print::write(const uint8_t*, size_t)’
In file included from SHT10AND1602ATMEGA16.cpp:4:
/home/sssss/arduino-1.0.1/libraries/LiquidCrystali2c/LiquidCrystal.h:90: error: conflicting return type specified for ‘virtual size_t LiquidCrystal::write(uint8_t)’
/home/sssss/arduino-1.0.1/hardware/arduino/cores/M2Arduino/Print.h:40: error: overriding ‘virtual void Print::write(uint8_t)’

// include the library code:
#include <Wire.h>
#include <LiquidCrystal.h>
#include <SHT1x.h>

// Connect via i2c, default address #0 (A0-A2 not jumpered)
LiquidCrystal lcd(0);

// Specify data and clock connections and instantiate SHT1x object
#define dataPin  0  
#define clockPin 1

SHT1x sht1x(dataPin, clockPin);

void setup() {
  // set up the LCD's number of rows and columns: 
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("Starting up!");
}

void loop() 

{
  //SHT1X set
  float temp_c;
  float temp_f;
  float humidity;

  // Read values from the sensor
  temp_c = sht1x.readTemperatureC();
  temp_f = sht1x.readTemperatureF();
  humidity = sht1x.readHumidity();
  
   // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 0);
  // print the temp c
  lcd.print("Temp:");
  lcd.print(temp_c,6);
  lcd.print(" C");

  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the humidity
  lcd.print("Humidity:");
  lcd.print(humidity,2);
  lcd.print(" %");

  lcd.setBacklight(HIGH);
  delay(200);

}

some one help me ? thanks very much!

Looks like the "M2Arduino" core that you installed is not compatible with the Arduino 1.0 libraries. You need to find an updated core for the ATmega16.

johnwasser:
Looks like the "M2Arduino" core that you installed is not compatible with the Arduino 1.0 libraries. You need to find an updated core for the ATmega16.

Thank you very much! Yes,i think it's the point. but i can't find the updated version

some one can help me~~~~~

upupup