如果我们设法解决这个问题,我会非常感动。
我是初学者程序员,遵循O'Reilly书籍“iphone 3D编程”中的第一章教程。在尝试运行初始练习程序后,我收到以下错误:
Detected an attempt to call a symbol in system libraries that is not present on the iPhone:
open$UNIX2003 called from function _ZN4llvm12MemoryBuffer7getFileEPKcPSsx in image libLLVMContainer.dylib.
我已将其缩小到这部分代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
CGRect screenBounds = [[UIScreen mainScreen] bounds];
m_window = [[UIWindow alloc] initWithFrame: screenBounds];
m_view = [[GLView alloc] initWithFrame: screenBounds];
[m_window addSubview: m_view];
[m_window makeKeyAndVisible];
return YES;
}
当我注释掉以下行时,它可以正常工作,即启动,但不会绘制预期的屏幕:
m_view = [[GLView alloc] initWithFrame: screenBounds];
我是否可以正确调试这个?
我感谢所提供的所有帮助:)
编辑1
我发现this conclusion表示这是模拟器的错误。然后我尝试在我的设备上运行我的代码(iphone 4.1),虽然没有错误消息,但我仍然没有看到任何被屏幕绘制的内容:)
有什么建议吗?
答案 0 :(得分:1)
您应该能够安全地忽略这些,因为它们似乎是iOS 4.1与模拟器交互方式中的错误。根据我的经验,模拟器中的这些控制台错误不会影响实际的OpenGL ES渲染。
您的渲染问题最有可能发生在其他地方。