when you use it, the symbol IS referenced and the lib required. if you really dont need the the functionality, wrap its usage in a define. 'define it out':
#if TARGET_OS_IPHONE
iSmart *smart = ....
#else
NSLog(@"no ismart on mac");
#endif
NOTE: It's not enough to not assign/call a symbol. dont even use the symbol for declaring a variable**
It might only be in the 1 file AFAICS .. #ifdef the whole file and maybe create a SmartReaderVC stub