【已解决】Ubuntu下Eclipse中交叉编译一个C项目出错:Type ‘va_list’ could not be resolved

【问题】

之前已经折腾完毕:

【记录】Ubuntu下使用Eclipse编译一个基于makefile的C项目

期间,也解决过类似的N多问题:

【已解决】Eclipse通过Makefile调用交叉编译器交叉编译C项目出错:Type ‘FILE’ could not be resolved

【已解决】Eclipse中交叉编译C项目出错:Symbol ‘SETVAL’ could not be resolved

【已解决】Ubuntu下Eclipse中交叉编译C项目出错:Symbol ‘NULL’ could not be resolved

【已解决】Ubuntu下Eclipse中交叉编译C项目出错:Symbol ‘off’ could not be resolved

以及:

【已解决】Ubuntu下Eclipse中交叉编译一个C项目出错:Type ‘immap_t’ could not be resolved

【已解决】Ubuntu下Eclipse中交叉编译一个C项目出错:Symbol ‘XMLRPC_CLIENT_NO_FLAGS’ could not be resolved

但是此处,还有另外的的东西没找到:

Description    Resource    Path    Location    Type
Type ‘va_list’ could not be resolved    common.h    /HART-IP/BSP/Bootloader/u-boot-1.1.4-whgs/include    line 537    Semantic Error

Type va_list could not be resolved

【解决过程】

1.va_list,貌似很熟悉的东西。

2.参考:

CDT reports error with va_list but compiles anyway

va_list has not been declared

得知,va_list是在stdarg.h中的。

之前已通过:

【已解决】Eclipse通过Makefile调用交叉编译器交叉编译C项目出错:Type ‘FILE’ could not be resolved

加了include路径了。

又通过:

【已解决】Ubuntu下Eclipse中交叉编译C项目出错:Symbol ‘NULL’ could not be resolved

加了include/linux路径了。

难道这个文件,又是放在别的路径下的?

3.去查查stdarg.h在哪,是否在交叉编译器下:

crifan@ubuntu:xscale$ find . -name stdarg.h
./gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/include/stdarg.h
./gcc-4.6.0-glibc-2.9/arm-xscale-linux-gnueabi/include/c++/4.6.0/tr1/stdarg.h
crifan@ubuntu:xscale$ ls ./gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/include
arm_neon.h  float.h  iso646.h  mmintrin.h  stdarg.h  stdbool.h  stddef.h  stdfix.h  stdint-gcc.h  stdint.h  unwind.h  varargs.h
crifan@ubuntu:xscale$ ls ./gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/ -lha
total 608K
dr-xr-xr-x 6 crifan crifan 4.0K Aug  8 00:53 .
dr-xr-xr-x 3 crifan crifan 4.0K Aug  8 00:53 ..
-r--r--r-- 1 crifan crifan 1.7K Aug  8 00:53 crtbegin.o
-r--r--r-- 1 crifan crifan 2.0K Aug  8 00:53 crtbeginS.o
-r--r--r-- 1 crifan crifan 2.0K Aug  8 00:53 crtbeginT.o
-r--r--r-- 1 crifan crifan  989 Aug  8 00:53 crtend.o
-r--r--r-- 1 crifan crifan  989 Aug  8 00:53 crtendS.o
dr-xr-xr-x 2 crifan crifan 4.0K Aug  8 00:52 include
dr-xr-xr-x 4 crifan crifan 4.0K Aug  8 00:52 include-fixed
dr-xr-xr-x 3 crifan crifan 4.0K Aug  8 00:54 install-tools
-r--r--r-- 1 crifan crifan 379K Aug  8 00:53 libgcc.a
-r--r--r-- 1 crifan crifan  64K Aug  8 00:53 libgcc_eh.a
-r--r--r-- 1 crifan crifan 118K Aug  8 00:53 libgcov.a
dr-xr-xr-x 4 crifan crifan 4.0K Aug  8 00:53 plugin
crifan@ubuntu:xscale$ ls ./gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/include -lha
total 520K
dr-xr-xr-x 2 crifan crifan 4.0K Aug  8 00:52 .
dr-xr-xr-x 6 crifan crifan 4.0K Aug  8 00:53 ..
-r--r--r-- 1 crifan crifan 393K Aug  8 00:52 arm_neon.h
-r--r--r-- 1 crifan crifan 8.7K Aug  8 00:52 float.h
-r--r--r-- 1 crifan crifan 1.3K Aug  8 00:52 iso646.h
-r--r--r-- 1 crifan crifan  36K Aug  8 00:52 mmintrin.h
-r--r--r-- 1 crifan crifan 4.2K Aug  8 00:52 stdarg.h
-r--r--r-- 1 crifan crifan 1.5K Aug  8 00:52 stdbool.h
-r--r--r-- 1 crifan crifan  13K Aug  8 00:52 stddef.h
-r--r--r-- 1 crifan crifan 5.9K Aug  8 00:52 stdfix.h
-r--r--r-- 1 crifan crifan 6.8K Aug  8 00:52 stdint-gcc.h
-r--r--r-- 1 crifan crifan  145 Aug  8 00:52 stdint.h
-r--r--r-- 1 crifan crifan 9.0K Aug  8 00:52 unwind.h
-r--r--r-- 1 crifan crifan  139 Aug  8 00:52 varargs.h
crifan@ubuntu:xscale$ ls ./gcc-4.6.0-glibc-2.9/arm-xscale-linux-gnueabi/include/c++/4.6.0/tr1 -lha
total 856K
dr-xr-xr-x  2 crifan crifan 4.0K Aug  8 00:54 .
dr-xr-xr-x 10 crifan crifan 4.0K Aug  8 00:54 ..
-r--r--r--  1 crifan crifan 6.9K Aug  8 00:54 array
-r--r--r--  1 crifan crifan  22K Aug  8 00:54 bessel_function.tcc
-r--r--r--  1 crifan crifan 5.5K Aug  8 00:54 beta_function.tcc
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 ccomplex
-r--r--r--  1 crifan crifan 1.4K Aug  8 00:54 cctype
-r--r--r--  1 crifan crifan 2.0K Aug  8 00:54 cfenv
-r--r--r--  1 crifan crifan 1.4K Aug  8 00:54 cfloat
-r--r--r--  1 crifan crifan 2.3K Aug  8 00:54 cinttypes
-r--r--r--  1 crifan crifan 1.5K Aug  8 00:54 climits
-r--r--r--  1 crifan crifan  37K Aug  8 00:54 cmath
-r--r--r--  1 crifan crifan  13K Aug  8 00:54 complex
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 complex.h
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 cstdarg
-r--r--r--  1 crifan crifan 1.4K Aug  8 00:54 cstdbool
-r--r--r--  1 crifan crifan 2.6K Aug  8 00:54 cstdint
-r--r--r--  1 crifan crifan 1.5K Aug  8 00:54 cstdio
-r--r--r--  1 crifan crifan 1.8K Aug  8 00:54 cstdlib
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 ctgmath
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 ctime
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 ctype.h
-r--r--r--  1 crifan crifan 1.7K Aug  8 00:54 cwchar
-r--r--r--  1 crifan crifan 1.5K Aug  8 00:54 cwctype
-r--r--r--  1 crifan crifan  28K Aug  8 00:54 ell_integral.tcc
-r--r--r--  1 crifan crifan  16K Aug  8 00:54 exp_integral.tcc
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 fenv.h
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 float.h
-r--r--r--  1 crifan crifan  64K Aug  8 00:54 functional
-r--r--r--  1 crifan crifan 5.8K Aug  8 00:54 functional_hash.h
-r--r--r--  1 crifan crifan  15K Aug  8 00:54 gamma.tcc
-r--r--r--  1 crifan crifan  41K Aug  8 00:54 hashtable.h
-r--r--r--  1 crifan crifan  25K Aug  8 00:54 hashtable_policy.h
-r--r--r--  1 crifan crifan  28K Aug  8 00:54 hypergeometric.tcc
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 inttypes.h
-r--r--r--  1 crifan crifan  11K Aug  8 00:54 legendre_function.tcc
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 limits.h
-r--r--r--  1 crifan crifan 4.5K Aug  8 00:54 math.h
-r--r--r--  1 crifan crifan 1.8K Aug  8 00:54 memory
-r--r--r--  1 crifan crifan  16K Aug  8 00:54 modified_bessel_func.tcc
-r--r--r--  1 crifan crifan 3.7K Aug  8 00:54 poly_hermite.tcc
-r--r--r--  1 crifan crifan  12K Aug  8 00:54 poly_laguerre.tcc
-r--r--r--  1 crifan crifan 1.6K Aug  8 00:54 random
-r--r--r--  1 crifan crifan  72K Aug  8 00:54 random.h
-r--r--r--  1 crifan crifan  53K Aug  8 00:54 random.tcc
-r--r--r--  1 crifan crifan  91K Aug  8 00:54 regex
-r--r--r--  1 crifan crifan  14K Aug  8 00:54 riemann_zeta.tcc
-r--r--r--  1 crifan crifan  32K Aug  8 00:54 shared_ptr.h
-r--r--r--  1 crifan crifan 4.8K Aug  8 00:54 special_function_util.h
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 stdarg.h
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 stdbool.h
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 stdint.h
-r--r--r--  1 crifan crifan 1.2K Aug  8 00:54 stdio.h
-r--r--r--  1 crifan crifan 1.5K Aug  8 00:54 stdlib.h
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 tgmath.h
-r--r--r--  1 crifan crifan  12K Aug  8 00:54 tuple
-r--r--r--  1 crifan crifan  19K Aug  8 00:54 type_traits
-r--r--r--  1 crifan crifan 1.6K Aug  8 00:54 unordered_map
-r--r--r--  1 crifan crifan  10K Aug  8 00:54 unordered_map.h
-r--r--r--  1 crifan crifan 1.6K Aug  8 00:54 unordered_set
-r--r--r--  1 crifan crifan 9.4K Aug  8 00:54 unordered_set.h
-r--r--r--  1 crifan crifan 3.2K Aug  8 00:54 utility
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 wchar.h
-r--r--r--  1 crifan crifan 1.3K Aug  8 00:54 wctype.h
crifan@ubuntu:xscale$ cd ./gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/include
crifan@ubuntu:include$ pwd
/opt/crosscompile/xscale/gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/include
crifan@ubuntu:include$ ls -ha
.  ..  arm_neon.h  float.h  iso646.h  mmintrin.h  stdarg.h  stdbool.h  stddef.h  stdfix.h  stdint-gcc.h  stdint.h  unwind.h  varargs.h
crifan@ubuntu:include$ ls -hal
total 520K
dr-xr-xr-x 2 crifan crifan 4.0K Aug  8 00:52 .
dr-xr-xr-x 6 crifan crifan 4.0K Aug  8 00:53 ..
-r--r--r-- 1 crifan crifan 393K Aug  8 00:52 arm_neon.h
-r--r--r-- 1 crifan crifan 8.7K Aug  8 00:52 float.h
-r--r--r-- 1 crifan crifan 1.3K Aug  8 00:52 iso646.h
-r--r--r-- 1 crifan crifan  36K Aug  8 00:52 mmintrin.h
-r--r--r-- 1 crifan crifan 4.2K Aug  8 00:52 stdarg.h
-r--r--r-- 1 crifan crifan 1.5K Aug  8 00:52 stdbool.h
-r--r--r-- 1 crifan crifan  13K Aug  8 00:52 stddef.h
-r--r--r-- 1 crifan crifan 5.9K Aug  8 00:52 stdfix.h
-r--r--r-- 1 crifan crifan 6.8K Aug  8 00:52 stdint-gcc.h
-r--r--r-- 1 crifan crifan  145 Aug  8 00:52 stdint.h
-r--r--r-- 1 crifan crifan 9.0K Aug  8 00:52 unwind.h
-r--r--r-- 1 crifan crifan  139 Aug  8 00:52 varargs.h
crifan@ubuntu:include$ 

所以,打算把:

/opt/crosscompile/xscale/gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/include

加到项目的include中:

add lib gcc include into gnu c path

add lib gcc include for gnu c   path

4.然后再去更新一下,试试,然后就可以了,就可以找到头文件了:

found stdarg h file

 

【总结】

此处Eclipse中(交叉编译C项目)出现:

Type ‘va_list’ could not be resolved

的错误,原因是:

va_list所在的stdarg.h所在路径没有加进来

解决办法:

把此处的交叉编译器的stdarg.h所在路径:

/opt/crosscompile/xscale/gcc-4.6.0-glibc-2.9/lib/gcc/arm-xscale-linux-gnueabi/4.6.0/include

加到项目的include中即可。



发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量