NDK에서 fatal signal로 나타나는 앱 크래시는 디버깅하기가 힘듭니다만, cocos2d-x에서 발생하는 크래시는 대개 11과 8 두 가지가 제일 흔하지 않을까 합니다.
그리고 PC 환경에서는 잘 발생하지 않고, 폰 환경에서도 무작위적이며, 특히 폰을 탄다고 하면 아래 내용을 조사해보면 대체로 해결할 수 있습니다.
1.
fatal signal 11
주 원인 : 포인터가 할당되지 않은 메모리를 참조하였을 경우입니다. 흔하게는 배열의 인덱스로 변수를 사용하여, 이 변수값이 인덱스 범위를 벗어났을 경우입니다. 또는 생성에 실패한 객체 포인터를 참조할 경우에도 발생합니다
2.
fatal signal 8
주 원인 : 십중팔구 divide by zero 에러입니다.
양쪽 모두 공통적으로 잘못된 연산에 의해서도 발생하지만, 폰을 타는 경우는 변수 초기화를 제대로 하지 않았을 가능성이 큽니다.
그리고 PC 환경에서는 잘 발생하지 않고, 폰 환경에서도 무작위적이며, 특히 폰을 탄다고 하면 아래 내용을 조사해보면 대체로 해결할 수 있습니다.
1.
fatal signal 11
주 원인 : 포인터가 할당되지 않은 메모리를 참조하였을 경우입니다. 흔하게는 배열의 인덱스로 변수를 사용하여, 이 변수값이 인덱스 범위를 벗어났을 경우입니다. 또는 생성에 실패한 객체 포인터를 참조할 경우에도 발생합니다
2.
fatal signal 8
주 원인 : 십중팔구 divide by zero 에러입니다.
양쪽 모두 공통적으로 잘못된 연산에 의해서도 발생하지만, 폰을 타는 경우는 변수 초기화를 제대로 하지 않았을 가능성이 큽니다.
at 2014/05/13 17:57
덧글