在 buildroot 中,啟動了 timezone info 後,在 /etc/TZ 會出現這個檔案,我們可以編輯這個檔案來改變板子上的時區。另外一種方式好像是利用環境變數 TZ 來變更,但兩者之間誰先誰後,還有待研究。
台灣應該為 UTC-8,但實際上我們生活中,台北時間應該為標準時間+8,看起來 Linux 好像和我們的認知是相反的。
今天看到一個還蠻特別的用法
%*d
%*s
奇怪,為什麼中間可以加一個星星呢?
原來是可以用來做 scanf sscanf 時,忽略掉這個 token,cplusplus 提供有說明解釋。
http://stackoverflow.com/questions/2155518/what-is-scanfs-and-scanfd-format-identifiers
解決辦法:
- 確認 so 和 libc 等等是有配對的
- 確認 LD_LIBRARY_PATH 是否有指定到對的 so PATH
- 這是我的成功解決方是,因為我是使用 binary 去呼叫包裝過後的 so,而問題出現在 so,因此我在 so 裡面的多個 .c 檔編譯時,加上 -L -l 等等參數,之後就成功了,原來的方式是只有 binary 加上 linker 的參數而已。
[YOUR_ANDROID_SDK_ROOT]/tools/emulator: cannot execute binary file
或是[YOUR_ANDROID_SDK_ROOT]/tools/emulator: No such file or directory
這可能是代表你在 64 bit 的 OS,但缺少 32 bit 的 Library,解決方法如下
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1 lib32bz2-1.0
"Failed to start emulator: Cannot run program "/home/christopher/Desktop/android-sdk-linux_86//tools/emulator": java.io.IOException: error=2, No such file or directory".
也可用這種方式解決。