我試圖編譯的Android 4.1爲我的設備,但我得到這個錯誤:C++錯誤,而編譯android源碼
target thumb C++: libandroid_runtime <= frameworks/base/core/jni/Time.cpp
target thumb C++: libandroid_runtime <= frameworks/base/core/jni/com_android_internal_content_NativeLibraryHelper.cpp
frameworks/base/core/jni/Time.cpp: In member function 'android::String8 android::Time::format(char const*, const android::strftime_locale*) const':
frameworks/base/core/jni/Time.cpp:91:61: error: 'strftime_tz' was not declared in this scope
make: *** [out/target/product/galaxysl/obj/SHARED_LIBRARIES/libandroid_runtime_intermediates/Time.o] Errore 1
make: *** Attesa per i processi non terminati....
我該如何解決這些問題呢?我必須在Time.cpp中聲明strftime_tz,但我不知道要這樣做。有Time.cpp的一部分:
String8
Time::format(const char *format, const struct strftime_locale *locale) const
{
char buf[257];
int n = strftime_tz(buf, 257, format, &(this->t), locale);
if (n > 0) {
return String8(buf);
} else {
return String8();
}
}
謝謝。
好像'strftime_tz'是一個可擴展標準C函數'strftime'。我不認爲你應該聲明它,但是找出它已經被聲明的支持庫中的哪個地方。 – 2012-07-31 14:22:01