기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.

QT라이브러리를 4.4.3버전으로 쓰다가 항상 하루이틀 arm보드에 구동 시키면 알 수 없는 포인터 주소 문제로 어제 4.8로 업버전 시켜보았습니다.
그런데 이 버전은 특이하게도 항상 같은 곳에서 Alignment Trap 메세지가 출력 되었습니다.

디버거로 해당 코드를 확인 해 보니 qblendfunctions.cpp의 qt_blend_argb24_on_rgb16 함수내부의

    for (int y=0; y<h; ++y) {
        const uchar *src = srcPixels + y * sbpl;
        const uchar *srcEnd = src + srcOffset;
        while (src < srcEnd) {
#if defined(QT_ARCH_ARMV5) || defined(QT_ARCH_POWERPC) || defined(QT_ARCH_SH) || defined(QT_ARCH_AVR32) || (defined(QT_ARCH_WINDOWSCE) && !defined(_X86_)) || (defined(QT_ARCH_SPARC) && defined(Q_CC_GNU)) || (defined(QT_ARCH_INTEGRITY) && !defined(_X86_))
            // non-16-bit aligned memory access is not possible on PowerPC,
            // ARM <v6 (QT_ARCH_ARMV5) & SH & AVR32 & SPARC w/GCC
            quint16 spix = (quint16(src[2])<<8) + src[1];
#else
            quint16 spix = *(quint16 *) (src + 1);
#endif
            uchar alpha = alphaFunc.alpha(*src);


위와 같은 코드에서 #else - #endif 사이의 코드가 실행 되면서 발생하였습니다.
QT의 소스코드를 바꾸면 라이센스 위반으로 알고있는데 코드는 손 안대고 #if - #else 사이의 코드를 진입하게 하거나 argb24형식의 pixmap을 생성 못하게 하고 싶은데 어떻게 하면 좋을지 아시는 분 계시면 답변 부탁드립니다.

영어만 하면 QT 포럼에도 질문 할텐데 orz
당장은 "echo 0 > /proc/cpu/alignment" 해버리면 무시 되지만 왠지 그냥 두기에는 찜찜합니다.

./configure -debug -xplatform qws/linux-armv6-g++ -embedded arm -little-endian -no-largefile -no-webkit -no-script -no-accessibility -no-qt3support -qt-zlib -qt-libpng -qt-libmng -qt-libjpeg -no-nis -no-cups -qt-freetype -depths 16 -qt-mouse-tslib -qt-gfx-linuxfb -qt-gfx-qvfb -qt-gfx-vnc -prefix /nfs/RootFS/usr/local -confirm-license -opensource

추가로 빌드 할 때의 옵션입니다. 혹시나 참고 될까 해서 넣었습니다.

이상입니다.

덧.
             total       used       free     shared    buffers     cached
Mem:           123         89         34          0          0         79
-/+ buffers/cache:          9        113
Swap:            0          0          0


free -m 하면 위와 같이 나오는데 buffer/cache의 값이 이상한거 같습니다. 정상일까요?

List of Articles
번호 제목 글쓴이 날짜 조회 수
5168 Android - ALSA HAL 관련 문의 [1] 새희망 2012-02-08 1870
5167 ioremap에 대해서 ^^; 문의가 있습니다. file [2] 혜민아빠 2012-02-07 1368
5166 안드로이드에서 nfs 서버로 마운트 가능한가요? [2] 문종섭 2012-02-06 1733
5165 부트로더 관련 질문+임베디드드려요! 많은 답변 부탁드립니다. [3] 조동히 2012-02-06 1221
5164 안드로이드 부팅시 커널에서 다음과 같은 메시지를 보네주는데요.. [1] 훌러덩 2012-02-05 875
5163 Emulator kernel 에 insmod 불가 현상 [3] 2012 2012-02-04 1310
5162 커널 제작시에 디바이스 드라이버를 포함 시키는 방법에 대해서 문의... file [1] 혜민아빠 2012-02-03 1608
5161 s5pv210에 아이스크림샌드위치 포팅 문제 [4] 봉이 2012-02-03 2147
5160 android와 gpu에 관해서.. [4] 박수민 2012-02-03 1244
5159 odroid-s 질문입니다 ㅠㅠ 포팅에 관하여... [8] 하루천재 2012-02-03 1134
5158 가장 저렴하게 리눅스를 돌릴수 있는 CPU? [3] 권오혁 2012-02-03 1161
5157 오드로이드7 센서에 대해서.. [1] 조침철 2012-02-02 1285
» QT 라이브러리에서 Alignment Trap에 관한 질문입니다. iruis 2012-02-01 1191
5155 V210 보드 셋팅 메뉴얼 및 개발 관련 파일좀 올려 주세요~ [1] 김수기 2012-02-01 917
5154 Switched to Read-Only in ubifs rootfs.. Simba444 2012-02-01 1017
5153 오드로이드T에 허니컴을 올리는 방법? [3] trumpetYK 2012-01-31 1367
5152 Aesop V210 보드에서 MAC 어드레스 변경 가능한가요? (재등록) [3] Ike 2012-01-29 1557
5151 오리겐보드 망고보드 [2] 흠흠좋군 2012-01-28 2068
5150 Aesop V210 보드에서 MAC 어드레스 변경 가능한가요? [4] Ike 2012-01-28 1424
5149 S5PV210 의 WINCE6.5 BSP가 삼성에서 정식지원 되는지 알수있나... [1] 정철진 2012-01-27 1419

사용자 로그인