thanks. I add Zi option, But the error occurs im my code(not in gc code). In my program I defined some global pointers and vars, when it running, in some functions I will put pointer 'create with new (GC) XXX' to that global vars. Is this right? Do I need use GC_add_roots? And How can I use GC_add_roots?