我的文件foo.h
带有enum
:
#ifndef FOO_H
#define FOO_H
enum foo_e { foo_a, foo_b, foo_c };
typedef enum foo_e foo_t;
foo_t get_foo(char bar);
#endif
文件foo.c
导入它(#include "foo.h"
)并毫无问题地使用它。
我通过Eclipse导出这个项目的静态库,给我一个libFoo.a
。
在其他项目中,我使用库,所有符号都被解析,编译并正常工作。仅识别enum
声明。 Eclipse告诉我foo_t
,foo_a
,foo_b
,foo_c
未定义,而get_foo
已定义。
为什么?
答案 0 :(得分:0)
这是Eclipse索引项目的一个问题。您可以通过刷新Eclipse的项目索引来解决此问题。
Index > Freshen All Files
Index > Rebuild
您的项目现在应该能够在任何包含的静态库中找到所有符号。