eclipse CDT 사용시, Macro로 인한 syntax error 처리 방법이 있을까요....
안녕하세요.
eclipse CDT를 써볼려고 하는데,
아래와 같이, 리눅스 커널 코드의 init_post()를 볼려고 하면,
eclipse에서 syntax error를 일으킵니다.
803static noinline int init_post(void)
804 __releases(kernel_lock)
805{
(아래 경로 참조)
http://lxr.linux.no/#linux+v2.6.32/init/main.c#L803
eclipse CDT가 noinline와 __releases(kernel_lock) 매크로를 분석하지 못해서
syntax error를 일으키는 듯 한데요,
noinline와 __releases(kernel_lock) 둘다 널입니다.
(아래 경로 참조)
http://lxr.linux.no/#linux+v2.6.32/include/linux/compiler.h#L217
http://lxr.linux.no/#linux+v2.6.32/include/linux/compiler.h#L31
그래서 이 문제를 어떻게 해결하는 방법이 있나 해서,
구글링 해보니, 정확한 해결방법은 없는 듯 한데,
혹시 이거 해결할 수 있을까요?
syntax error 때문에 해당 함수 이동도 안 되고, 먹통이네요. --;
(구글링 참조)
http://efreedom.com/Question/1-802410/Eclipse-CDT-Say-Syntax-Error-Compilation-Problem
자진해결했습니다.
아무런 답이 없어, 우문무답이라는 생각이 들어서, 찾아서 해결했습니다.
Java project로 생성하다 보니, 프로젝트가 Java라서, include 경로 추가하는 메뉴가 안 보여서, Convert Java to C/C++ project하였습니다.
Project>Properties>Paths and Symbols>Includes에 include경로 추가하니, Building workspace, C/C++ Indexer가 동작을 하네요.
그럼. 즐건 하루...
댓글 달기