본문 바로가기

전체 글74

JNI 를 사용한 간단한 Android Project 간단한 예제를 통해서 JNI 를 사용하는 방법에 대해서 알아보자. 알아보기 전에 개발환경에 필요한 내용이 설치되어 있어야 한다. 1) android sdk, 2) android ndk, 3) 윈도환경이라면 cygwin, 4) jdk, 5) eclipse 등... 이와 같은 안드로이드 개발에 필요한 개발환경 세팅은 구축되어 있다고 가정한다. 앞선 내용에 대한 설치는 go google~ JNI 를 사용하는 프로젝트를 진행하는데 내 경우 자바도 잘 모르고 안드로이드도 잘 모르며, 심지어 이클립스 사용법도 익숙치 않아서 구글과 주위분들의 도움을 받아 진행했다. 1. eclipse 에서 JNITest 라는 Android Project 생성한다. - package name 은 임의로 준다. 여기서는 com.andr.. 2011. 12. 22.
[Android] static library를 사용하여 shared library 만들기 안드로이드의 bionic c library 의 기본 함수들을 hooking 하여 원하는 코드를 추가하려고 한다. 추가되는 코드에 또다시 hooking 한 함수가 호출되는 경우, 즉 예를 들어 printf 를 hooking 하는데, hooking code 에 printf 가 추가되어 있는 경우, 코드가 이상 동작할 수가 있다. 해결책으로 기존 bionic c library 를 static 으로 만들고, hooking 하여 새로운 library 는 shared library 로 만드는 방법으로 해결하려고 한다. 즉 안드로이드용으로 컴파일된 static library 가 있고, 이를 static linking 하여 shared library 를 만드려고 하는데, 이때, Android.mk 파일은 아래와 같이 .. 2011. 8. 10.
[TIP] putty 한글 깨짐 문제 해결 출처 : http://kltp.kldp.net/stories.php?story=02/02/06/0008990 http://plusblog.tistory.com/417 써본 무료 터미널 프로그램중에서는 putty 가 가장 좋다고 생각되어서 putty 를 자주 사용하고 있는데, 특히 어떤 서버들에 접속했을때, 한글이 깨져서 보이는 경우가 생긴다. 내가 경험해본 한글이 안되는 경우는 크게 2가지 경우로 나눌 수 있었다. 1. 이미 한글로 쓰여진 내용이 깨져서 보이는 경우여기서의 전제는 이미 접속한 서버의 locale 이 UTF-8 인 경우를 가정한다. (ko_KR.UTF-8) # Change Settings... 선택, Window -> Translation -> Character set translation.. 2011. 7. 7.
screen multi-user mode error: Must run suid root for multiuser support 출처 : https://bugzilla.redhat.com/show_bug.cgi?id=446049 screen multi-user mode 를 사용하려고 다른 사용자가 열어놓은 screen session 에 접근하려고 할때, 아래와 같은 에러가 발생할 수 있다. # screen -x /18648.pts-10.buildserver32 Must run suid root for multiuser support 이 에러는 screen 을 multiuser mode 로 사용할 경우 screen 이 suid root 권한으로 실행되어야 함을 나타낸다. root 권한을 가지고 수행되지 않는다면 위 에러 메시지가 발생한다. 아래와 같이 screen 에 suid 를 추가한 후에 다시 실행을 하면, # which scr.. 2011. 5. 12.