Ho bisogno di analizzare il codice Objective-C statica, soprattutto AST, dopo aver guardato i possibili strumenti che ho scoperto che strumento Clang da LLVM può scaricare l'AST, così ho usato il terminale di provarlo con questo comando:Come estrarre AST dal codice Objective-C?
clang -cc1 -ast-dump ~/SomeTest.m
ma sto ottenendo questo errore:
In file included from /Users/myusername/SomeTest.m:9:
/Users/myusername/SomeTest.h:9:9: fatal error: 'UIKit/UIKit.h' file not found
#import <UIKit/UIKit.h>
^
typedef __int128_t __int128_t;
typedef __uint128_t __uint128_t;
typedef SEL *SEL;
typedef id id;
typedef Class *Class;
struct __va_list_tag {
unsigned int gp_offset;
unsigned int fp_offset;
void *overflow_arg_area;
void *reg_save_area;
};
typedef struct __va_list_tag __va_list_tag;
typedef __va_list_tag __builtin_va_list[1];
@interface [email protected]
@implementation just4testViewController
- (void) dealloc (CompoundStmt 0x7f86b183b110 </Users/myusername/SomeTest.m:14:1, line:16:1>)
- (void) didReceiveMemoryWarning (CompoundStmt 0x7f86b183b2a0 </Users/myusername/SomeTest.m:19:1, line:24:1>)
- (void) viewDidUnload (CompoundStmt 0x7f86b183b430 </Users/myusername/SomeTest.m:37:1, line:41:1>)
- (id) shouldAutorotateToInterfaceOrientation:(id)interfaceOrientation (CompoundStmt 0x7f86b183b648 </Users/myusername/SomeTest.m:44:1, line:47:1>)
@end
1 error generated.
Qualsiasi idea del perché sto ottenendo questo? Non mi dispiace usare alcuno strumento per estrarre AST dal codice Objective-C finché è affidabile e fornire documentazione per l'output
Ciao, sei riuscito a trovare un parser per estrarre AST dal codice sorgente dell'obiettivo-C? Grazie! – ramo