Monotouch模板Open GL应用程序绘制调用会产生错误吗?

时间:2011-04-04 00:05:32

标签: opengl-es xamarin.ios monodevelop ios4

我安装了最新的ios sdk 4.3,最新的Monotouch和MonoDevelop更新。创建模板打开GL应用程序(旋转彩色sq)称为TestBug,并在调用draw我得到下面的应用程序输出。应用程序继续运行,但这是我第一次在踩到EagleView.cs中的GL.DrawArrays调用时看到应用程序输出。是否有其他人看到这个或可以告诉我我可能做错了什么?道歉。

原生堆栈跟踪:

    0   TestBug                             0x000b7b4d mono_handle_native_sigsegv + 343
    1   TestBug                             0x0000e12f mono_sigsegv_signal_handler + 226
    2   libSystem.B.dylib                   0x9755d45b _sigtramp + 43
    3   ???                                 0xffffffff 0x0 + 4294967295
    4   libLLVMContainer.dylib              0x0229ea48 _ZN4llvm21PrettyStackTraceEntryC2Ev + 84
    5   libLLVMContainer.dylib              0x02215f9e _ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE + 232
    6   libLLVMContainer.dylib              0x02217167 _ZN4llvm23FunctionPassManagerImpl3runERNS_8FunctionE + 197
    7   libLLVMContainer.dylib              0x0221726b _ZN4llvm19FunctionPassManager3runERNS_8FunctionE + 83
    8   libCoreVMClient.dylib               0x01c3ca79 cvmsCompBuildMonolithicFunction + 1376
    9   libCoreVMClient.dylib               0x01c40991 cvmsServerBuildMonolithicFunction + 235
    10  libCoreVMClient.dylib               0x01c3e589 CVMSBuildMonolithicFunction + 92
    11  libCVMSPluginSupport.dylib          0x01c360d1 _Z29cvm_deferred_build_monolithicPv + 120
    12  libCVMSPluginSupport.dylib          0x01c35918 cvmDoWork + 111
    13  libSystem.B.dylib                   0x975247fd _pthread_start + 345
    14  libSystem.B.dylib                   0x97524682 thread_start + 34

Debug info from gdb:

warning: Could not find object file "/var/folders/Vv/VvqxJ24WGcqs6wHSaxcLWE+++TI/-Tmp-/tmp60099686.tmp/main.o" - no debug information available for "/var/folders/Vv/VvqxJ24WGcqs6wHSaxcLWE+++TI/-Tmp-/tmp60099686.tmp/main.m".

Attaching to process 5300.
Reading symbols for shared libraries . done
Reading symbols for shared libraries ......................................................................... done
0x974f709a in mach_msg_trap ()
  8                         0x975023fe in read$UNIX2003 ()
  7 "WebThread"             0x974f709a in mach_msg_trap ()
  6                         0x97525046 in __semwait_signal ()
  5                         0x974f70d6 in semaphore_wait_trap ()
  4                         0x974f709a in mach_msg_trap ()
  3                         0x9751d922 in kevent ()
  2                         0x9751c9b2 in __workq_kernreturn ()
* 1 "com.apple.main-thread" 0x974f709a in mach_msg_trap ()

Thread 8 (process 5300):
#0  0x975023fe in read$UNIX2003 ()
#1  0x000b7cfd in mono_handle_native_sigsegv (signal=11, ctx=0xb0454bb0) at ../../../../mono/mini/mini-exceptions.c:1826
#2  0x0000e12f in mono_sigsegv_signal_handler (_dummy=10, info=0xb0454b70, context=0xb0454bb0) at ../../../../mono/mini/mini.c:4810
#3  <signal handler called>
#4  0x022bd630 in llvm::sys::AddSignalHandler ()
#5  0x0229ea48 in llvm::PrettyStackTraceEntry::PrettyStackTraceEntry ()
#6  0x02215f9e in llvm::FPPassManager::runOnFunction ()
#7  0x02217167 in llvm::FunctionPassManagerImpl::run ()
#8  0x0221726b in llvm::FunctionPassManager::run ()
#9  0x01c3ca79 in cvmsCompBuildMonolithicFunction ()
#10 0x01c40991 in cvmsServerBuildMonolithicFunction ()
#11 0x01c3e589 in CVMSBuildMonolithicFunction ()
#12 0x01c360d1 in cvm_deferred_build_monolithic ()
#13 0x01c35918 in cvmDoWork ()
#14 0x975247fd in _pthread_start ()
#15 0x97524682 in thread_start ()

Thread 7 (process 5300):
#0  0x974f709a in mach_msg_trap ()
#1  0x974f7807 in mach_msg ()
#2  0x0144cd86 in __CFRunLoopServiceMachPort ()
#3  0x013a9e74 in __CFRunLoopRun ()
#4  0x013a9840 in CFRunLoopRunSpecific ()
#5  0x013a9761 in CFRunLoopRunInMode ()
#6  0x03924913 in RunWebThread ()
#7  0x975247fd in _pthread_start ()
#8  0x97524682 in thread_start ()

Thread 6 (process 5300):
#0  0x97525046 in __semwait_signal ()
#1  0x97550ec5 in nanosleep$UNIX2003 ()
#2  0x97550e03 in usleep$UNIX2003 ()
#3  0x002592b8 in monotouch_pump_gc (context=0x0) at monotouch-glue.m:326
#4  0x975247fd in _pthread_start ()
#5  0x97524682 in thread_start ()

Thread 5 (process 5300):
#0  0x974f70d6 in semaphore_wait_trap ()
#1  0x001508e8 in finalizer_thread (unused=0x0) at ../../../../mono/metadata/gc.c:1026
#2  0x001f1eb8 in start_wrapper (data=0x4f228c0) at ../../../../mono/metadata/threads.c:661
#3  0x0022e94a in thread_start_routine (args=0x505ba34) at ../../../../mono/io-layer/wthreads.c:286
#4  0x00256d79 in GC_start_routine (arg=0x5fc9f60) at ../../../libgc/pthread_support.c:1390
#5  0x975247fd in _pthread_start ()
#6  0x97524682 in thread_start ()

Thread 4 (process 5300):
#0  0x974f709a in mach_msg_trap ()
#1  0x974f7807 in mach_msg ()
#2  0x00114577 in mach_exception_thread (arg=0x0) at ../../../../mono/mini/mini-darwin.c:138
#3  0x975247fd in _pthread_start ()
#4  0x97524682 in thread_start ()

Thread 3 (process 5300):
#0  0x9751d922 in kevent ()
#1  0x01b85f36 in _dispatch_mgr_invoke ()
#2  0x01b86333 in _dispatch_queue_invoke ()
#3  0x01b86593 in _dispatch_worker_thread2 ()
#4  0x9751cd21 in _pthread_wqthread ()
#5  0x9751cb66 in start_wqthread ()

Thread 2 (process 5300):
#0  0x9751c9b2 in __workq_kernreturn ()
#1  0x9751cf48 in _pthread_wqthread ()
#2  0x9751cb66 in start_wqthread ()

Thread 1 (process 5300):
#0  0x974f709a in mach_msg_trap ()
#1  0x974f7807 in mach_msg ()
#2  0x0144cd86 in __CFRunLoopServiceMachPort ()
#3  0x013a9e74 in __CFRunLoopRun ()
#4  0x013a9840 in CFRunLoopRunSpecific ()
#5  0x013a9761 in CFRunLoopRunInMode ()
#6  0x025fd1c4 in GSEventRunModal ()
#7  0x025fd289 in GSEventRun ()
#8  0x00886c93 in UIApplicationMain ()
#9  0x07854681 in ?? ()
#10 0x078545ba in ?? ()
#11 0x0785449d in ?? ()
#12 0x078543d9 in ?? ()
#13 0x07854434 in ?? ()
#14 0x0000df4a in mono_jit_runtime_invoke (method=0x50dde74, obj=0x0, params=0xbfffed8c, exc=0x0) at ../../../../mono/mini/mini.c:4733
#15 0x001baf2b in mono_runtime_invoke (method=0x50dde74, obj=0x0, params=0xbfffed8c, exc=0x0) at ../../../../mono/metadata/object.c:2615
#16 0x001bcb5f in mono_runtime_exec_main (method=0x50dde74, args=0x782d170, exc=0x0) at ../../../../mono/metadata/object.c:3581
#17 0x001bc4a9 in mono_runtime_run_main (method=0x50dde74, argc=0, argv=0xbfffeec4, exc=0x0) at ../../../../mono/metadata/object.c:3355
#18 0x00092d14 in mono_jit_exec (domain=0x5941e58, assembly=0x4f66670, argc=1, argv=0xbfffeec0) at ../../../../mono/mini/driver.c:1094
#19 0x0000349a in main ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

2 个答案:

答案 0 :(得分:2)

这是MonoTouch中的模拟器唯一错误,该错误已在即将发布的版本中修复。很抱歉给您带来不便。

答案 1 :(得分:0)

我通过全新的机器安装获得相同的行为。在这批调试喷出之后,GL示例应用程序继续正常运行,但我使用线程的真实应用程序无法在iPhone模拟器调试版本中完成加载(无论我在运行它时是否真的在调试器中或不)。

我的应用程序创建了一个线程,在帧循环运行时在后台加载东西,并且线程似乎在UIFont调用中停止。

该应用程序仍然使用发布版本运行,而以前的iOS SDK / MonoTouch组合不会发生这种情况。

这是我用一个全新的硬盘驱动器来解决这个问题:

  1. 安装Snow Leopard。
  2. 已安装Xcode 4.0.1和iOS SDK 4.3。
  3. 已安装Mono 2.6.7和2.10.1
  4. 安装MonoDevelop,运行它并升级到最新版本(2.4.2)
  5. 已安装MonoTouch(3.2.6)
  6. 使用旋转立方体创建默认iPhone项目
  7. 在iPhone模拟器上运行,我得到同样的问题genpfault提及。