2 cosas para decir....
Puede que tu "printf" no sea el mismo "printf" que el otro compilador.
Buscando por el printf de stdio.h
int printf ( const char * format, ... );
es decir no se le pasa una funcion. ahi debe estar el problema.
proba hacer:
int8_t variable = printf(lcd_putc,"\f-LCD 3 pin Mode-\n* !.|.|..|.|.! *");
Y fijate el valor de variable.
On success, the total number of characters written is returned.
If a writing error occurs, the error indicator (ferror) is set and a negative number is returned.
Mi segunda cosa a decir es que a pesar que pide definir el tipo de lcd ( me refiero a la cantidad de lineas ) no hay restriccion en el gotoxy, es decir podes seleccionar para 1 linea, pero si por casualidad pones un gotoxy a la segunda linea, va a intentar grabar en la segunda, creo que con un ifdef/ifndef podrias salvarlo o preguntando por la constante, total luego el compilador al optimizarlo va a sacar el codigo.