서적에 관한 질문 및 오류 등을 문의 할 수 있으며, 저자로부터 직접 답변을 받을 수 있습니다.

ndk 예제를 응용해 보려고 하는데요


책에 있는 소스에서 제가 사용중인 라이브러리를 추가하여 실행 시키려고 하는데 에러가 나는데요


//------------------------------------

//-----libled/Android.mk

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := eng
LOCAL_SRC_FILES:= \
    ledService.cpp
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include   <----헤더추가
LOCAL_SHARED_LIBRARIES := \
       libutils    \
       libbinder    \
        libLAPI      \  <---- shared library 추가


LOCAL_PRELINK_MODULE := false
LOCAL_MODULE := libled
include $(BUILD_SHARED_LIBRARY)

//------------------------------------




//------------------------------------ledService.h

#include <utils/RefBase.h>
#include <binder/IInterface.h>
#include <binder/Parcel.h>

#include "../include/LAPI.h" <-----헤더파일 추가


namespace       android
{
    class           LEDService:public BBinder
    {
        int32_t         mNextConnId;
      public:
        static int      instantiate();


                        LEDService();
                        virtual ~ LEDService();
                       
        virtual status_t onTransact(uint32_t, const Parcel &, Parcel *, uint32_t);
    };
};                              // namespace


-----------------------------

binder 영역에서 C라이브러리를 이용하여 코드를 만들려고 이렇게 했는데요

위 처럼 헤더만 추가해서 mm으로 빌드한후에


ledservice를 실행하니깐

Segmentation fault 메시지가 바로 나오더라구요;;


LAPI는 제가 테스트용으로 만든 라이브러리이구요  암보드에서 라이브러리 이용해서 동작테스트까지 다 해봤습니다.


헤더만 추가했는데.

Segmentation fault가 나오는데;; 라이브러리 경로나 설정을 잘못 지정한건가요?;;







전호철

2015.02.04 02:33:15
*.162.60.30

아마....

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include   <----헤더추가 
하셨으니
#include "../include/LAPI.h" <-----헤더파일 추가
이렇게 하지 말고
#include <LAPI.h> <-----헤더파일 추가
이렇게 하셔야 할것 같네요.

Segmentation fault 떨어지는 문제같은거는 core dump 분석하는 법을 공부하셔서 해결하시는게 좋아보입니다.

ice179

2015.02.04 02:36:01
*.150.142.33

null 참조하거나 그럴때 Segmentation fault  가 나는데

android 환경 터미널에서 gdb나 디버그할수 있느 방법이 있나요?

 

헤더선언을 #incude "LAPI.h"로 하면 경로 에러가 나네요 기존에 "../include/LAPI.h"는 컴파일은 잘 되긴했는데요

고도리

2015.02.04 05:57:20
*.200.239.210

logcat을 띄워 놓으신 후


ledservice를 실행하시면 ledservice가 죽는 포인트를 debug message로 보여줍니다.

함수까지 나오니, 대략 알 수 있을겁니다.


보통은 파일이나 device driver 접근에 대한 permission 문제가 많습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수sort

PDK를 이용하여 안드로이드 프레임워크 so파일 참조에 관해서 질문있... [7]

예제를 따라하던 중 Android.mk 파일로 APK파일 생성 후 설치시 ... [6]

ndk 38페이지 질문_repo file [1]

안드로이드의 모든것 분석과 포팅 교재 관련 [2]

  • nexus26
  • 2011-07-05
  • 조회 수 10560

[Linux와 Android] 001 - 임베디드 시스템에 대하여 file

다시 질문 드립니다.ㅜㅜ apk 설치문제입니다. [3]

책 관련해서 질문이 있습니다. [1]

  • winpih
  • 2011-07-13
  • 조회 수 9030

안드로이드 init의 특징에 대해 질문있습니다. [2]

117쪽 ueventd 실행 부분.. [1]

475페이지 그림 외 건의 사항.. [2]

[Linux와 Android] 002 - UNIX/Linux system 개요 file

[Linux와 Android] 002 - UNIX/Linux system 개요(Continue......

p186. Gingerbread 센서 구조의 간략한 설명 요청드립니다. [3]

  • forone
  • 2011-08-25
  • 조회 수 8429

NDK를 이용한 camera 제어 예제에 대해 문의 드립니다. [7]

  • 죽유
  • 2013-01-11
  • 조회 수 8046

chapter7 안드로이드 오디오 서브시스템 에서 궁금한게 있습니다 [1]

개발환경 설정 중 문의사항입니다. file [1]

아래 [SDL 예제관련 에러 질문입니다.] 이어서... [3]

  • 민민
  • 2012-12-26
  • 조회 수 7752

책이 나온내용이지만 좀 다른예기일수도 잇네요 [1]

RGB 부분에 대해서 질문이 있습니다. [1]

  • ys2cdh
  • 2012-01-05
  • 조회 수 7380

JNI로 휴대폰 디바이스 번호를 구하려고 합니다 file [3]

  • fox8306
  • 2012-09-19
  • 조회 수 6875

사용자 로그인