- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我试图让 gcc 到 dump the include paths和我的 .clang_complete
文件现在看起来像:
-std=gnu89
-nostdinc
-I/usr/src/linux-headers-3.0.0-16-generic/arch/x86/include
-I/lib/modules/3.0.0-16-generic/build/arch/x86/include/generated
-I/lib/modules/3.0.0-16-generic/build/include
-I/lib/modules/3.0.0-16-generic/build/ubuntu/include
-I/usr/lib/gcc/i686-linux-gnu/4.6.1/include
-D__KERNEL__
-DMODULE
但是libclang
在编辑一个简单的 hello world 内核模块时仍然提示大量的错误和警告。
1 /lib/modules/3.0.0-16-generic/build/include/linux/list.h|24 col 42 warning| declaration of 'struct list_head' will not be visible outside of this function
2 /lib/modules/3.0.0-16-generic/build/include/linux/list.h|26 col 6 error| incomplete definition of type 'struct list_head'
3 /lib/modules/3.0.0-16-generic/build/include/linux/list.h|24 col 42 info| forward declaration of 'struct list_head'
4 /lib/modules/3.0.0-16-generic/build/include/linux/list.h|27 col 6 error| incomplete definition of type 'struct list_head'
5 /lib/modules/3.0.0-16-generic/build/include/linux/list.h|24 col 42 info| forward declaration of 'struct list_head'
6 /lib/modules/3.0.0-16-generic/build/include/linux/list.h|37 col 38 warning| declaration of 'struct list_head' will not be visible outside of this function
...
struct list_head
的定义来自 <linux/types.h>
已包含在 <linux/list.h>
中.都在里面 /lib/modules/3.0.0-16-generic/build/include
最佳答案
与 clang_complete 捆绑在一起的 cc_args.py 可能对您有用。它应该构建一个有效的 .clang_complete 文件。不幸的是(我刚刚测试过,我会尝试修复它),它在这里不起作用(无法创建 .clang_complete 文件)。
但是,通过调整脚本及其结果,我已经能够生成有效的 .clang_complete 文件:
-D__KERNEL__
-DCONFIG_AS_CFI=1
-DCONFIG_AS_CFI_SIGNAL_FRAME=1
-DCONFIG_AS_CFI_SECTIONS=1
-DCONFIG_AS_FXSAVEQ=1
-nostdinc
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.3/include
-I/usr/src/linux-3.2.12-1-ARCH/arch/x86/include
-I/usr/src/linux-3.2.12-1-ARCH/arch/x86/include/generated
-I/usr/src/linux-3.2.12-1-ARCH/include
-DMODULE
-DKBUILD_STR(s)=#s
-include /usr/src/linux-3.2.12-1-ARCH/include/linux/kconfig.h
有了这个 .clang_complete,只剩下一个与 __kfree_rcu 相关的错误,有关它的更多信息,请参阅:https://lkml.org/lkml/2012/1/12/2
关于c - 如何为 linux 内核模块开发配置 clang_complete?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9822415/
我已经设置了一个简单的项目来测试 VIM 作为 C++ 编译器以及教程中的简单 makefile 的可行性,但我似乎无法从 cc_args.py 脚本生成 .clang_complete 文件。 自述
最近在用clang_complete做C++代码补全。它对小程序来说既好又快,但对我来说太慢了(我正在处理大型代码库,通常一个文件需要几秒钟来编译),即使我使用了 libclang,它可以缓存一些解析
我想设置我的 CMakeLists.txt 文件,以便它可以生成 vim 插件 clang_complete 所需的 .clang_complete 文件。 通常,您可以通过将一个参数传递给它与编译器
考虑这个源片段: class Z { public: Z(int){} void foo() {} }; 这按预期工作: int main() { Z a(1); a.
我最近发现了 clang_complete,并想在 MacVim 中试一试。我正在做 iOS 开发,一开始我遇到了 UIKit/UIKit.h file not found 错误,就像其他人遇到的那样
我使用 Vim 和 clang_complete 来完成全能。 当我需要完成时,插件会自动触发,例如,在我输入 . 之后或 ->访问对象成员或方法(见下面的截图)。 该插件工作得非常好,但是我需要一种
我已经使用omniCppComplete + ctags有一段时间了,希望对代码补全进行进一步的改进。 根据这里的建议[ 1 ],gccsense 和 clang_complete 似乎是替代品。但是
我正在使用 CMake 生成 Makefile,但是我无法使用标准生成 .clang_complete make CC='~/.vim/bin/cc_args.py gcc' CXX='~/.vim/
在尝试使用 clang complete 为 C 设置自动完成时在 vim 中,到目前为止,当我在 .c 文件中时,当我按下 ctrl+x,u 时,我会自动完成。但是它只显示一些符号。 包含标题中的所
在clang_complete.txt(帮助文件)中,它在clang_complete-compl_kinds中显示了这些: 2.Completion kinds *
我正在尝试制作 clang_complete和 neocomplcache一起玩得很好。我的问题是,当我打开 cpp、c、objc 或 objcpp 文件时,出现以下错误neocomplcache c
我在 Linux 系统上安装了 clang 和 clang_complete。我在我的 .vimrc 中添加了以下行: let g:clang_user_options='|| exit 0' set
我正在尝试使用 clang_complete作为 vim C++ 补全。我必须注意我正在使用 pathogen也。我采购了为 clang-pathogen 提供的 vimball,并将所有内容放在我的
所以最近我一直在尝试建立一个基于 Vim 的 iOS 工作流程。 我找到了 clang_complete,并且像这样在我的 .vimrc 中设置了 clang 用户选项 let g:clang_use
所以我有一个非常基本的 C 程序来尝试和测试 clang_complete: #include #include struct xampl { int x; }; int main() {
我试图让 gcc 到 dump the include paths和我的 .clang_complete 文件现在看起来像: -std=gnu89 -nostdinc -I/usr/src/linux
如果我将以下内容保存到/tmp/test.cpp: #include #include int main() { CFStringRef my_string = CFSTR("hello, w
我是一名 Linux 初学者,只想开始用 C 编写代码/学习一些有关套接字的知识,但事实证明我不得不花 6 个小时来尝试为 vim 安装 clang_complete。 这是我所做的: cd ~/下载
我试图为 vim 安装 clang_complete。 我已经下载了源代码,当我尝试制作它时,它给了我这个: E492: Not an editor command %MkVimball! clang
案例:用gVim 7.3测试clang_complete 我安装了 MinGW,然后遵循教程 here下载并编译 clang。它编译了大约一个小时,然后 make install。铛工作。我特别喜
我是一名优秀的程序员,十分优秀!