@property(readonly,getter=iFileName) const char * fileName;
@synthesize iFileName;
означает, что есть свойство с именем filename, которое получает свой геттер с именем "iFileName".
и для этого свойства действительно нет синтеза
Полагаю, вам нужно определить имя получателя iFileName как "fileName", то есть:
@property(readonly,getter=fileName) const char * iFileName;
@synthesize iFileName;
, что делает метод получения с именем fileName для свойства iFileName при синтезе