Unity Version4.5.4f1でiOS用のアプリをシミュレーターで動かそうとしたところ、
i386には"_clock$UNIX2003"ないよと怒られた。
ちなみにXcodeは6.0.1。
Undefined symbols for architecture i386:
"_clock$UNIX2003", referenced from:
_substanceHandleSwitchHard in libiPhone-lib.a(apihandle.o)
_mainRenderProcess in libiPhone-lib.a(mainrenderprocess.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
こちらのフォーラムでUnityの人が下記をmain.mmに追加すればイケるって書いてたのでやってみた。
main.mm
#include <time.h>
extern "C"
{
clock_t
clock$UNIX2003(void)
{
return clock();
}
}
イケた。
けどこれっていいのかな(´・ω・`)
追記
Unity Version4.5.5f1にアップデートしたら発生しなくなってた。
これが追加されたっぽい。
main.mm
#if TARGET_IPHONE_SIMULATOR
extern "C" clock_t clock$UNIX2003(void) { return clock(); }
#endif // TARGET_IPHONE_SIMULATOR