Arduino Uno, ATtiny85 libraries problem

Hello, I have some trouble with using some new libraries like ShiftLCD, Liquid Crystal I2C, SPI and so on. I had some mistakes to which I found a solution. For example the I2C library:

LiquidCrystal_I2C.h:
change line in these files from
virtual void write(uint8_t);
to
virtual size_t write(uint8_t);

LiquidCrystal_I2C.cpp:
change line in these files from
inline void LiquidCrystal_I2C::write(uint8_t value) {
to
inline size_t LiquidCrystal_I2C::write(uint8_t value) {

I implemented the change on the ShiftLCD library since I had to use it and it worked on the ATtiny85 but I get a lot of errors when I try to upload it on the Uno. Also the SPI library seems to work on the Uno and I get some undefined errors whe nI try to upload to the tiny. As far as I know the tiny supports SPI interface and it shouldn't have a problem.

So my question is does anyone know why the ShiftLCD library I mentioned does what it does when I use it, and how can I make the SPI library work on the tiny (I need it for a digital potentiometer).Thanks.

Getting Arduino Uno libraries to work on an ATTiny is a ton of work. Your best bet is to go looking for existing ATTiny-specific libraries other people have written for the things you want to do.

The ATTiny85 lacks the hardware features the ATMega328, so porting a library usually isn't straightforward. You often have to re-implement from scratch. SPI, for example: The Tiny "supports" SPI, but via a completely different interface, so the library code looks totally different.