我已将私人框架添加到我的项目中。当我在DEVICE中构建时RELEASE一切正常,我能够启动应用程序,并在我的设备上成功启动。
然而,当尝试在模拟器中构建和运行时,我收到错误“没有这样的文件或目录”,如下所示:(我也得到错误两次,这也很奇怪。)
Line Location HomeProfileViewController.h:10: error: BluetoothManager/BluetoothManager.h: No such file or directory
以下是我目前拥有的项目和构建设置,也许有人可以找到错误并让我知道,这将是非常棒的!
PROJECT SETTINGS:
PRIVATE_HEADERS_FOLDER_PATH = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include"
PUBLIC_HEADERS_FOLDER_PATH = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include"
USER_HEADER_SEARCH_PATHS = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include"
OTHER_CFLAGS = "-I/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include-I/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include-I/Developer/Platforms/iPhoneOS.platform/Developer/usr/lib/gcc/arm-apple-darwin9/4.0.1/include-F/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks-DMAC_OS_X_VERSION_MAX_ALLOWED=1050"
TARGET BUILD SETTINGS:
PRIVATE_HEADERS_FOLDER_PATH = "/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks"
FRAMEWORK_SEARCH_PATHS = "$(inherited) $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks"
USER_HEADER_SEARCH_PATHS = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include/**"
OTHER_CFLAGS = "-I/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include-I/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include-I/Developer/Platforms/iPhoneOS.platform/Developer/usr/lib/gcc/arm-apple-darwin9/4.0.1/include-F/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks-DMAC_OS_X_VERSION_MAX_ALLOWED=1050"
注意:路径中的引号实际上并不在我的项目中,我将它们放入,以便网站更好地对它们进行语法化。
苹果蠹
答案 0 :(得分:2)
实际上,对于SDK 3.0+,请确保二进制文件和标头位于PrivateFrameworks文件夹中,如下例所示: 的 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks/BluetoothManager.framework 强>
Binaries和Header文件必须位于此目录下,标题必须位于/ Headers下,例如: 的 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks/BluetoothManager.framework/Headers/BluetoothManager.h 强>
然后使用这些语句,您将需要私有标题:
#if TARGET_IPHONE_SIMULATOR
//This is where you put code for simulator
#else
//Private functions will go here!
#endif
现在你可以从上面列出的第一个目录中添加私有框架,你可以构建并使用模拟器,并为设备构建!在设备/模拟器之间切换时,你不必添加/删除框架!