2011-09-30 51 views
1

在編譯項目時遇到這兩個參數很難發揮作用。任何幫助將非常感激。Monotouch mtouch參數問題

-gcc_flags "-L${ProjectDir} -lflite -all_load" -nosymbolstrip -nostrip -cxx -gcc_flags " -lgcc_eh -L${ProjectDir} -ltestflight -ObjC" 

flite是一個本地C庫,而TestFlight是一個Obj-C庫。任何想法如何讓他們一起玩好?

lflite庫工作得很好,然後我去添加TestFlight,事情就橫向了。該解決方案編譯但崩潰與啓動:

Sep 30 15:40:18 Dev-iPhone UIKitApplication:com.cognitopia.scando[0x2e64][3288] <Notice>: Native stacktrace: 

Sep 30 15:40:18 Dev-iPhone UIKitApplication:com.cognitopia.scando[0x2e64][3288] <Notice>: 0 ScanDo        0x005f9770 mono_handle_native_sigsegv + 412 

Sep 30 15:40:18 Dev-iPhone UIKitApplication:com.cognitopia.scando[0x2e64][3288] <Notice>: 1 ScanDo        0x005c9788 mono_sigsegv_signal_handler + 360 

Sep 30 15:40:18 Dev-iPhone UIKitApplication:com.cognitopia.scando[0x2e64][3288] <Notice>: 2 libsystem_c.dylib     0x34f3172f _sigtramp + 42 

Sep 30 15:40:18 Dev-iPhone UIKitApplication:com.cognitopia.scando[0x2e64][3288] <Notice>: 3 ScanDo        0x005c93f0 mono_jit_runtime_invoke + 2800 

回答

1

嘗試:

-gcc_flags "-force_load ${ProjectDir}/libflite.a -lgcc_eh -force_load ${ProjectDir}/libtestflight.a -ObjC" -nosymbolstrip -nostrip -cxx 
0

合併兩個參數,並使用--force_load,因爲它僅適用於所提供的庫,而不是--load_all影響所有庫(並可以使用libgcc_eh.a或libtestflight.a來玩技巧)。這會給出類似的東西:

-nosymbolstrip -nostrip -cxx -gcc_flags "-L${ProjectDir} -lflite -force_load ${ProjectDir}/libflite.a -lgcc_eh -ltestflight -ObjC" 

另外據報道,使用testflight SDK需要使用LLVM編譯器選項。