macos – 在OS X框架中使用clang_complete
如果我将以下内容保存到/tmp/test.cpp:
#include <CoreServices/CoreServices.h> #include <iostream> int main() { CFStringRef my_string = CFSTR("hello,world!"); std::cout << CFStringGetLength(my_string) << 'n'; } 我可以使用!clang -framework CoreServices%正确编译它,但是clang_complete无法从CoreServices完成任何操作. 文档说我应该将编译器选项放在.clang_complete文件中(在这种情况下我使用的是/tmp/.clang_complete),但是到目前为止我尝试的所有内容都会导致test.cpp ||未知参数:’-framework’出现在快速修复窗口中. 让clang_complete正确处理框架的正确方法是什么? 解决方法
请参阅
clang_complete: Vim autocompletion for iOS以获得有用的答案.显然clang_complete使用不支持-framework参数的-cc1选项.
我能够使用-triple和-target选项作为我需要的-arch参数的替换,也许其中一个-cc1 args可以替换-framework? 要重现您的错误,您可以这样做 :! clang -cc1 % -framework CoreServices 所以我认为现在的问题变成了“如何将框架传递给clang -cc1?”. 编辑:通过运行 clang++ -v -framework CoreServices ./test.cpp 你可以得到clang -cc1的输出 我的是 -triple x86_64-apple-macosx10.6.7 -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -main-file-name test.cpp -pic-level 1 -mdisable-fp-elim -relaxed-别名-masm-verbose -munwind-tables -target-cpu core2 -target-linker-version 123.2 -v -resource-dir /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/../lib/clang/2.1 -fdeprecated-macro -ferror-limit 19 -fmessage-length 179 -stack-protector 1 -fblocks -fcxx-exceptions -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -o / var / folders / w2 / w26NavGvGauuJwhTtEeQ9 TI / – Tmp- / cc-GbJXd6.o -xc ./test.cpp 我从末尾删除了-o参数和输入文件,并将其添加到.vimrc中的用户选项,但代码完成仍然无法正常工作..嗯 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |