clang_complete:iOS的Vim自动完成功能

Sam*_*Sam 5 vim clang ios clang-complete

所以最近我一直在尝试建立一个基于Vim的iOS工作流程.

我找到了clang_complete,并在我的.vimrc中设置了clang用户选项

let g:clang_user_options='-fblocks -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk -D__IPHONE_OS_VERSION_MIN_REQUIRED=40300'
Run Code Online (Sandbox Code Playgroud)

如下所述:http://www.zenskg.net/wordpress/?p = 199#comment-229

并添加了一些框架/头/ lib路径.我不会发布整条线,因为它很大.

所以我使用clang命令行(使用相同的选项)测试了我的项目中的一个文件的编译,并且它编译得很好,但只有我使用-arch armv6/7标志.如果我不这样做,它会尝试编译i386并抱怨缺少头文件.

到现在为止还挺好.现在我只使用我给出的完全相同的选项clang,对clang_complete我的.vimrc权利用户选项?

不.当我这样做并尝试在Vim中自动完成一个单词时,它说

 unknown argument: '-arch' 
Run Code Online (Sandbox Code Playgroud)

在Vim的QuickFix列表中.我有点需要这面旗帜 - 我该怎么办?

任何想法都有用.我很想在Vim下完成iOS代码的完成.

小智 3

clang_complete running clang -cc1,这会导致编译器前端运行而不是驱动程序。编译器前端不理解该-arch选项。clang -cc1 --help将向您展示可能的选项。您可能应该指定-triple或 之一-target-*

如果您不确定要使用什么,您可以像以前一样手动运行 clang,但以详细模式 ( -v) 运行。这样它将打印clang -cc1命令行,您可以在其中找到适当的参数。