2016-11-10 10 views
1

C에서 자동 완성 기능을 사용하도록 YCM을 설정하려고합니다. 나는 manaul에 설명 된 지침을 따랐습니다. (: help YouCompleteMe) 그러나 보여주지 않습니다. 나를위한 자동 완성리스트. ycm_extra_conf.py 및 디버그 정보의 플래그 중 일부는 다음과 같습니다. (PS, I는 또한해야한다 (필자는 C 파일을 열 때 나의 현재 상태를 게시하고 PRI를 입력하면 printf와 나 등)YouCompleteMe (YCM)은 형식을 제안하지 않습니다. (C11)

감사합니다 :)

MY CURRENT STATUS

YCM DEBUG INFO

'-std=c11', 
    '-x', 
    'c' 
    '-isystem', 
    '../BoostParts', 
    '-isystem', 
    '/System/Library/Frameworks/Python.framework/Headers', 
    '-isystem', 
    '../llvm/include', 
    '-isystem', 
    '../llvm/tools/clang/include', 
    '-I', 
    '.', 
    '-I', 
    './ClangCompleter', 
    '-isystem', 
    './tests/gmock/gtest', 
    '-isystem', 
    './tests/gmock/gtest/include', 
    '-isystem', 
    './tests/gmock', 
    '-isystem', 
    './tests/gmock/include', 
    #C default header 
    '-isystem', 
    '/usr/lib/gcc/x86_64-linux-gnu', 
    '-isystem', 
    '/usr/lib/gcc/x86_64-linux-gnu/5/include', 
    '-isystem', 
    '/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed', 
    '-isystem', 
    '/usr/local/include', 
    '-isystem', 
    '/usr/include', 
을 제안합니다 맨 처음에

답변

2

봐 :

'-std=c11', 
'-x', 
'c' 
'-isystem', 

마지막 두 항목은 c-isystem이됩니다 (:YcmDebug 출력 참조). 컴파일러를 혼동시킬 수 있습니다. 나는 당신이 -c를 대신 의미했다고 생각합니다. 그럼에도 불구하고 이러한 플래그는 YouCompleteMe에 대해 중복되므로 안전하게 생략 할 수 있습니다.

P. C++ 헤더는 C 컴파일러도 혼동하므로 제공된 헤더가 현재 소스 파일 유형 (C 또는 C++)과 일치하는지 확인해야합니다.

+0

OMG .. 나는 쉼표를 놓쳤다 ..! @Sergio 감사합니다 :) –