I (still) assume that you have some build setting different between Debug and Release configuration (e.g. "Header Search Path"). If you can't find the problem in the Build Settings, I would recommend to inspect the preprocessed output of the source file:
- Select the .m file that gives the warning.
- Choose Product -> Generate Output -> Preprocessed File from the Xcode menu.
- At the bottom of the preprocessed output window, switch between
- "Running" (which uses the Debug configuration by default) and
- "Profiling" (which uses the Release configuration).
In the preprocessed output, search for the sqlite3_key()
declaration in both versions. You can also check if the correct version of "sqlite3.h" was included. Without a Header Search Path, there would be a line
# 1 "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/usr/include/sqlite3.h" 1 3 4
With the Header Search Path correctly set up for SQLCipher, the path to "sqlite3.h" should be different, so you can check that and again compare "Running/Debug" and "Profiling/Release" output.