1. Kernel 에서 pr_debug 등이 안나올 때,
간단히는 맨 위(“#include <linux/kernel.h>”보다 위)에 “#define DEBUG” 추가 혹은 http://www.kernel.org/doc/local/pr_debug.txt 처럼 makefile 수정
DEBUG를 추가했을 때 왜 pr_debug 가 Enable 되는지 보고 싶다면, include/linux/kernel.h 참고
커널 메시지 보기 : 커널이 어느정도 안정적이라면 UART 등을 이용하는 것보다 adb 쉘을 이용하는 것이 더 편하던데..
adb shell cat /proc/kmsg
2. Android 에서 LOGE, LOGW, LOGI, LOGD 가 안나올 때,
맨 위에 “#define LOG_NDEBUG 1” 추가
LOGV 까지 보고 싶을 땐 “#define LOG_NDEBUG 0” 추가
LOG_NDEBUG 가 미치는 영향을 보고 싶다면, system/core/include/cutils/log.h 파일 참고.
logcat 메시지 보기
adb logcat
그러나 로그 메시지 보기에는 역시 DDMS 가 가장 좋다.로그 TAG를 통해 필터링해서 보는 것이 가장 보기 쉽고 깔끔하다.
아쉬우나마 adb logcat 을 이용해서 필터링 하고 싶다면 다음과 같이 한다.
adb logcat <TAG>:<LOGLEVEL> *:S
예를 들어, CameraTest 는 V 레벨로(CameraTest:V), Camera는 D 레벨로(Camera:D), 나머지는 안나오게 하고 싶다면(*:S) 다음과 같이 한다.
adb logcat CameraTest:V Camera:D *:S
filter-spec 등 adb의 사용법을 더 알고 싶다면 Android Debug Bridge(http://developer.android.com/guide/developing/tools/adb.html)를 참고한다.
pr_debug 구글에 검색했더니 나오는 정석씨 홈페이지~~~ ㅋㅋㅋㅋ
ㅎㅎㅎ 선임님 댓글 달아주셔서 고마워요~
악플보다 무서운게 무플이라고, 제 블로그 봤다는 사람은 많은데 아무도 흔적은 안남겨주셔서 서운했는데 ㅠㅠ
제가 적어놓은게 선임님께도 도움되었으면 좋겠어요~
pr_debug검색해서 돌아다니가 정석이 블로그 나오네 ㅋㅋㅋ
ㅋㅋ 형도 블로그 있음 남겨주세요~
안녕하세요 커널 메시지 확인에 대해 질문 하고 싶습니다.
#include
#include
을 추가 하고 printk문을
printk를 사용하여서 커널 메시지 확인을 하고 싶어서
#include
printk( “MMC_SWITCH : arg=%xn”,arg);
위와 같이 사용하고 make로 컴파일을 하니
host C: emulator-target-arm <= external/qemu/hw/goldfish_mmc.c external/qemu/hw/goldfish_mmc.c:17:54: error: linux/module.h: No such file or directory external/qemu/hw/goldfish_mmc.c:21:52: error: linux/init.h: No such file or directory external/qemu/hw/goldfish_mmc.c: In function 'goldfish_mmc_do_command': external/qemu/hw/goldfish_mmc.c:362: warning: implicit declaration of function 'printk' make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/emulator-target-arm_intermediates/hw/goldfish_mmc.o] 오류 1 라고 나왔는데 혹시 이것을 어떻게 해결해야되는지 알고 계시나요??? 제발 알려주세요 ㅠ
external/qemu/hw/goldfish_mmc.c 는 커널 소스가 아닙니다^^;;
아 그러면 메시지를 확인하고 싶은데 printk를 쓰면 안되는 건가요???
해당 소스를 열어보지 않아서 모르겠으나 적당한 방법이 있을 겁니다~ 찾아보세요~