Category Archives: dev

AndroidManifest.xml file missing!

android開発中、急に出るようになった。
buildは成功してるっぽいが、emulator実行しようとするとこのエラーがでる。
eclipse再起動してもだめ。
結局projectを一度workspaceからdeleteして、もう一度importしたらエラーがでなくなった。

xcode link error memo

自作static libraryを使って、アプリを開発しようとしたら
下のリンクエラーがでた。

↓↓↓↓↓
Undefined symbols for architecture i386:
“std::ios_base::Init::Init()”, referenced from:
___cxx_global_var_init in [static library name].a([file name].o)
“std::ios_base::Init::~Init()”, referenced from:
___cxx_global_var_init in [static library name].a([file name].o)
“___gxx_personality_v0”, referenced from:
Dwarf Exception Unwind Info (__eh_frame) in [static library name].a([file name].o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
↑↑↑↑↑

静的ライブラリのXCodeへの設定は以下の通り


targets(project名) → BuilldPhases → LinkBinaryWithLibraries に静的ライブラリ追加


targets(project名) → BuildSettings → SerchPaths – HeaderSerchPaths にpath追加

これで問題ないはずなんですけど・・・

原因しばらく分からず、小一時間ほど悩んで、以下の方法で解決。

[解決法]
どれでもよいので1つのobjective-cファイルの拡張子を.mから.mmに変更したらリンクエラーがとれた。
多分、拡張子見て、コンパイラの設定が変わったりするんだと思う。
std系のリンクは.mmにしないとしてくれないとか?

※ちゃんと検証してないので、原因・動作は推測。