2016-07-19 3 views
2

ptxdist을 사용하여 ARM Cortex A8 CPU에서 실행되는 Linux 임베디드 시스템 용 커널 및 rootfs 이미지를 만듭니다.Upstart가 임베디드 리눅스에서 커널 패닉을 일으킬 수 있습니다.

필자는 최신 컴파일러 (GCC 5+)를 사용하려고했기 때문에 새 GCC에서 컴파일되지 않는 여러 외부 패키지를 업그레이드해야했습니다.

내가 벼락 출세의 다음 버전과 그 종속성을 컴파일 :

upstart: 1.13.2 
libnih: 1.0.3 
dbus: 1.11.2 
json-c: 0.12.1 

나는 부팅 할 때, 나는 다음과 같은 메시지가 얻을 : 온라인 검색

init: com.ubuntu.Upstart.c:3525: Assertion failed in control_emit_event_emitted: env != NULL 
init: Caught abort, core dumped 
Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000600 

유용한 힌트를 얻을하지 않았다 - the only relevant issue I found is this을, Upstart의 이전 버전과 관련이 있으며, 제 libnih는 이미 올바른 버전입니다.

답변

0

링크 된 버그 보고서의 # 8 의견에 따르면 libnih 버전 1.0.3을 사용하는 것으로 충분하지 않습니다. 우분투 버전을 특별히 사용해야합니다. 당신이보고있는 문제.

데이비드 아일랜드 (전자 데이비드)이 2013년 4월 22일에 쓴 : # 나는 소스에서 1.0.3 libnih 구축하고 또한 확인했습니다 7

버그 보고서에서 upstart는 해당 버전의 nih-dbus-tool로 빌드됩니다. 나는 아직도이 문제가있다.

제임스 헌트 (jamesodhunt)이 2013년 4월 22일에 쓴 : # 8

문제? 충돌이 발생 했습니까? 그렇다면, 당신은 여전히 ​​libnih의 잘못된 버전을 사용하고 있습니다 : 당신이 여기 에서 우분투 버전 (특히 1.0.3-4ubuntu16)를 이용해야하는 것은 : https://code.launchpad.net/~ubuntu-branches/ubuntu/raring/libnih/raring

당신은 실행하려면 --session 플래그가 필요하지 않습니다 "Session Init"(예,이 은 다소 혼란 스럽지만 --session은 오랜 시간 동안 테스트를 위해 추가 된 것이므로 전에 필요합니다). "세션 초기화"는 "--user"만 필요합니다.

관련 문제