How does function name scoping work across multiple C files?
I’m porting a standard gnu toolchain project to iPhone OS, and using Xcode to do it.
The code builds through make, but not through xcode. when building through xcode, the linker complains that the same symbol (function) is defined in two objects. the code has two distinct source files that #include a common file between them. While… odd (to me at least), it seems to work for the standard toolchain. any ideas if this is something that’s somehow handled differently through a standard makefile?
If it compiles without errors from the Makefile, but not from your XCode project, it is most likely because the compiler’s options are being set differently in the two environments. Check the Makefile to see what options are passed to ‘gcc’. In particular, it’s possible that the duplicate definitions are conditionally-compiled with #ifdef, and you may need to add some preprocessor definitions to your XCode project’s settings.