次のファイルがあり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が定義されていることを教えてくれます。
なんで?