일반 안녕하세요.. 타겟보드에 라이브러리 복사할때 질문입니다.
2008.10.07 18:10
QT-Embedded 4.4.3 최신버전을 사용하고 있습니다.
QT lib폴더 다 집어 넣고 Hello World를 실행했더니
librt.so.1 을 찾더군요.. 그래서 /usr/arm-linux-gnu/lib를 다시 통채로 집어 넣습니다.
그 후론 라이브러리를 못찾는다는 메세지가 나오진 않습니다만..
어플리를 실행시키면 세그멘테이션 오류가 나는군요..
-qws를 안할땐 커넥션 오류가 나고요 -_-;
도대체 이 세크멘테이션 오류가 어디서 나는건지..
라이브러리는 복사를 제대로 한건지 잘 모르겠습니다.
도움이 될만한 경험이나 조언 부탁드립니다.
Debian 2.6.18-6-686
gcc 버전 4.1.2
librt.so.1 -> librt-2.3.6.so 를 file 한 결과
lib/librt-2.3.6.so: ELF 32-bit LSB shared object, ARM, version 1 (ARM), for GNU/Linux 2.4.1, stripped
QT lib폴더 다 집어 넣고 Hello World를 실행했더니
librt.so.1 을 찾더군요.. 그래서 /usr/arm-linux-gnu/lib를 다시 통채로 집어 넣습니다.
그 후론 라이브러리를 못찾는다는 메세지가 나오진 않습니다만..
어플리를 실행시키면 세그멘테이션 오류가 나는군요..
-qws를 안할땐 커넥션 오류가 나고요 -_-;
도대체 이 세크멘테이션 오류가 어디서 나는건지..
라이브러리는 복사를 제대로 한건지 잘 모르겠습니다.
도움이 될만한 경험이나 조언 부탁드립니다.
Debian 2.6.18-6-686
gcc 버전 4.1.2
librt.so.1 -> librt-2.3.6.so 를 file 한 결과
lib/librt-2.3.6.so: ELF 32-bit LSB shared object, ARM, version 1 (ARM), for GNU/Linux 2.4.1, stripped
댓글 5
-
장길석
2008.10.07 19:18
-
고스
2008.10.07 20:54
답변 감사드립니다.
부가 설명을 하자면.. PC에서는 이상없이 실행이 됩니다. 타겟보드에서는 실행하자 마자바로 오류가 발생하고요.
QT Embedded 컨피규어 옵션은 여기서 장길석님께서 올려주신 강좌의 옵션을 그대로 복사해서 사용했습니다.
아... 그러고보니 그 옵션에 jpeg나 png 사용하겠다고 들어가 있군요!!! -_-;;
다시 설치해보겠습니다. 감사합니다. -
고스
2008.10.08 01:08
모니터에 프레임버퍼를 이용해서 Hello World 띄우는데 성공했습니다.
세그먼트 오류는 장길석님 말씀대로 라이브러리를 못찾아서 발생한 거 같습니다.
2년전에 IT Masters에서 EZ-5보드로 이것저것 해보고 그 이후로는 리눅스를 거의 못만져봤는데
성공하니까 뿌듯하네요. 그땐 장기 게임도 만들고 상명대 동아리 자료 가져다가
캠영상도 보드 LCD에 뿌리고 터치로 모터랑 캠 제어해서 이리저리 움직이고 해봤는데..
어떻게 기억이 하나도 안나는지 ㅠㅠ -
장길석
2008.10.08 01:37
축하드립니다. 고생 많으셨어요. ^^
아이, 2년 전이면 한참되셨지요. 저는 반년만 지나도 새까맣습니다. ^^;
앞으로 자주 들러 주시고, 좋은 글도 많이 부탁드립니다.
매일 매일 행복하세요. ^^ -
고스
2008.10.08 03:11
넵 감사합니다. 도와주신 덕분에 잘되었습니다.
4개월정도로 프로젝트 하나를 진행할까 합니다.. 앞으로도 많은 도움을 받고
저도 많은 도움이 되도록 노력하겠습니다.




PC에서는 이상없이 실행이 되나요?
PC에서 이상없이 실행이 되셨고 타켓보드에서 안된다고 하시면,
제 생각에는 Embedded QT를 설치하셨을 때, 입력하시는 옵션에 문제가 있을 것으로 생각됩니다.
예를 들어 tslib를 설치하지 않으셨는데, 사요하겠다고 옵션에 넣었다든지
아니면 jpeg 나 png 같은 것을 외부 라이브러리를 사용하겠다고 선택했다든지 하는 것 말이죠.
Embedded QT를 이미 설치하셨다고 하더라도 다른 디렉토리에 또다는 설치 옵션으로 설치할 수 있으므로
config 옵션을 변경하여 설치해서 다시 실행해 보십시오.